Introduzione alla matrice multidimensionale in Java

Una guida completa sull'array multidimensionale in Java. Una matrice è una struttura di dati omogenea che è una raccolta di elementi con un tipo di dati simile. Sono memorizzati nella posizione di memoria contigua. Nell'array, il primo elemento viene archiviato nell'indice 0, il secondo elemento viene archiviato nell'indice 1 e così via. Le matrici possono essere di una singola dimensione o multidimensionalità. In questo documento, esamineremo gli array multidimensionali in Java. Un array multidimensionale è un array di array che può contenere più di una riga e colonna. Vediamo ora la sintassi e l'implementazione dell'array multidimensionale nelle seguenti sezioni.

Sintassi:

data_type(dimension 1)(dimension 2)()…(dimension n) array_name= new data_type(size 1)(size 2)…(size n)

  • data_type : tipo di dati dell'array, Esempio: int, char, float, ecc
  • dimensione : la dimensione dell'array, Esempio: 1D, 2D, ecc.
  • array_name : nome dell'array.
  • size1, size2, …, sizeN : dimensioni della dimensione.

Tipi di array multidimensionali in Java

Gli array multidimensionali più comuni in Java sono:

  • Matrice bidimensionale o matrice 2D.
  • Matrice tridimensionale o matrice 3D.

1. Matrice bidimensionale

Le matrici 2D sono comunemente utilizzate nei videogiochi a piattaforma come Super Mario per rappresentare il terreno o lo schermo. Possono anche essere usati per disegnare scacchiere, che rappresentano strutture come un foglio di calcolo, ecc.

Codice :

int()() array1 = new int(2)(2);//Two dimensional Integer Array with 2 rows and 2 columns

Esempio :

9 10

7 66

Questo è un array 2D con due righe e due colonne.

2. Matrice tridimensionale

Le matrici tridimensionali non sono comunemente utilizzate nelle applicazioni in tempo reale. Pertanto, le matrici bidimensionali hanno una maggiore preferenza anche negli esempi di programmazione.

Codice :

int()()() array2 = new int(12)(24)(36); //Three dimensional Array

Esempio :

6 8 66

66 65 47

46 89 98

Come dichiarare una matrice multidimensionale in Java?

È facile comprendere l'array multidimensionale in Java se sono noti array normali. Le matrici multidimensionali possono essere dichiarate come mostrato di seguito:

Innanzitutto, vediamo la dichiarazione di array 2D:

  • int () () array1 = new int (2) (2); // Matrice integer bidimensionale con 2 righe e 2 colonne.
  • String () () array1 = new String (2) (2); // Matrice di stringhe bidimensionale con 2 righe e 2 colonne.
  • char () () array1 = new char (2) (2); // Array di caratteri bidimensionali con 2 righe e 2 colonne.
  • boolean () () array1 = new boolean (2) (2); // Matrice booleana bidimensionale con 2 file e 2 colonne.
  • double () () array1 = new double (2) (2); // Matrice doppia bidimensionale con 2 file e 2 colonne.
  • float () () array1 = new float (2) (2); // Matrice float bidimensionale con 2 file e 2 colonne.
  • long () () array1 = new long (2) (2); // Matrice lunga bidimensionale con 2 file e 2 colonne.
  • short () () array1 = new short (2) (2); // Matrice corta bidimensionale con 2 file e 2 colonne.
  • byte () () array1 = nuovo byte (2) (2); // Matrice di byte bidimensionale con 2 righe e 2 colonne.

Assicurarsi che venga creata la dichiarazione corretta durante la programmazione in Java.

Esempio 1

Codice:

//Java Program to demonstrate the multidimensional 2D array
public class MultidimensionalArray (
public static void main(String args())(
//2D array a is declared and initialized
int a()()=((2, 2, 3), (8, 4, 5), (9, 4, 5));
//Print the array elements
for(int i=0;i<3;i++)(
for(int j=0;j<3;j++)(
System.out.print(a(i)(j)+" ");
)
System.out.println();
)
))

Produzione:

La Dichiarazione della matrice tridimensionale può essere discussa.

  • int () () () array2 = new int (12) (24) (36); // Matrice tridimensionale

Questi array possono essere di qualsiasi tipo di dati. Di seguito sono riportati alcuni degli array tridimensionali con diversi tipi di dati.

  • int () () () IntArray; // dichiara una matrice tridimensionale di numeri interi.
  • byte () () () ByteArray; // dichiara una matrice tridimensionale di byte.
  • short () () () ShortArray; // dichiara una matrice tridimensionale di pantaloncini.
  • long () () () LongArray; // dichiara una matrice tridimensionale di Longs.
  • float () () () FloatArray; // dichiara una matrice tridimensionale di float.
  • double () () () DoubleArray; // dichiara una matrice tridimensionale di doppi.
  • boolean () () () BooleanArray; // dichiara una matrice tridimensionale di booleani.
  • char () () () CharArray; // dichiara una matrice tridimensionale di caratteri.
  • String () () () StringArray; // dichiara una matrice tridimensionale di stringhe.

Esempio n. 2

Codice:

//Java Program to demonstrate the multidimensional array
public class MultidimensionalArray (
//main method
public static void main(String() args) (
//3D array arr
int()()() arr = ( ( ( 1, -9, 3 ), ( 2, 7, 4 ) ), ( ( -45, -5, 6, 75 ), ( 88 ), ( 29, 30 ) ) );
// for..each loop to iterate through the elements of the 3d array arr
for (int()() ar: arr) (
for (int() a: ar) (
for(int finalarray: a) (
System.out.println(finalarray);
)
)
)
)
)

Produzione:

Come inizializzare l'array multidimensionale in Java?

Le matrici multidimensionali possono essere inizializzate in più modi:

1. Dichiarare e creare un array multidimensionale Java

  • int () () () a = new int (3) (5) (4);

In un modo più tradizionale, l'inizializzazione degli elementi dell'array può essere la seguente.

  • a (0) (1) (0) = 15; // Inizializzazione degli elementi dell'array nella posizione (0) (1) (0)
  • a (1) (2) (0) = 45; // Inizializzazione degli elementi dell'array nella posizione (1) (2) (0)
  • a (2) (1) (1) = 65; // Inizializzazione degli elementi dell'array nella posizione (2) (1) (1)

2. Specificare direttamente gli elementi

int()()() a = ( ( ( 11, 23, 30 ), ( 5, 65, 70 ), ( 0, 80, 10 ), ( 10, 12, 450 ) ), ( ( 33, 2, 4 ), (11, 66, 6), (55, 11, 22), (11, 57, 43) ) );

In questo caso, anche se le dimensioni di righe e colonne non sono menzionate, il compilatore java è in grado di identificare le dimensioni di righe e colonne contando il numero di elementi.

3. Nidificato per loop

Nel caso di memorizzazione di un numero elevato di elementi, è possibile utilizzare Nested For Loop come mostrato di seguito:

int i, j, k;
for(i = 0; i < 2; i++) (
for(j = 0; j < 3; j++) (
for(k = 0; k < 4; k++) (
a(i)(j)(k) = i + j + k;) ) )

4. Assegnazione di valori a una riga

int a= new int(3)(2)(4);
a(0)(2)(1)= 33;
a(0)(1)(2)= 73;
a(0)(1)(1)= 88;

Viene creata una matrice tridimensionale di dimensioni 3 livelli * 2 righe * 4 colonne ma i valori vengono assegnati solo ad alcune posizioni. Poiché nessuno degli altri elementi ha alcun valore assegnato, verranno assegnati valori predefiniti.

Operazioni su array multidimensionali

La matrice multidimensionale in Java può eseguire diverse operazioni.

Esempio 1

Vediamo l'aggiunta di matrice di due array.

Codice:

import java.util.*;
//Java Program to demonstrate the multidimensional array
public class MultidimensionalArray (
//main method
public static void main(String args())
(
int row, col, c, d;
//input the number of rows and columns
Scanner in = new Scanner(System.in);
System.out.println("Enter the number of rows of matrix");
row = in.nextInt();
System.out.println("Enter the number of columns of matrix");
col = in.nextInt();
//initialization of two matrices and sum matrix
int firstmat()() = new int(row)(col);
int secondmat()() = new int(row)(col);
int summat()() = new int(row)(col);
//adding elements to first matrix
System.out.println("Enter the elements to be added to the first matrix");
for (c = 0; c < row; c++)
for (d = 0; d < col; d++)
firstmat(c)(d) = in.nextInt();
//adding elements to second matrix
System.out.println("Enter the elements to be added to the second matrix");
for (c = 0 ; c < row ; c++)
for (d = 0 ; d < col ; d++)
secondmat(c)(d) = in.nextInt();
//sum of the two matrices
for (c = 0; c < row; c++)
for (d = 0; d < col; d++)
summat(c)(d) = firstmat(c)(d) + secondmat(c)(d);
System.out.println("Sum of the two given matrices is:");
//printing the sum matrix
for (c = 0; c < row; c++)
(
for (d = 0; d < col; d++)
System.out.print(summat(c)(d)+"\t");
System.out.println();
)
)
)

Produzione:

Se è necessario eseguire la sottrazione, sostituire '+' con '-' nel codice.

Esempio n. 2

Vediamo come funziona la moltiplicazione di matrici.

Codice:

import java.util.*;
//Java Program to perform matrix multiplication
public class MultidimensionalArray (
//main method
static int N = 4;
// multiply matrices a and b, and then stores the result in c
static void mul(int a()(),
int b()(), int c()())
(
int i, j, k;
for (i = 0; i < N; i++)
(
for (j = 0; j < N; j++)
(
c(i)(j) = 0;
for (k = 0; k < N; k++)
c(i)(j) += a(i)(k) * b(k)(j); //multiply a and b matrices
)
)
)
//main method
public static void main (String() args)
(
int a()() = ( (9, 7, 2, 3),
(9, 7, 2, 3),
(4, 13, 32, 2),
(9, 7, 2, 3));
int b()() = (( 9, 7, 2, 3), (9, 7, 2, 3),
(9, 7, 2, 3),
(4, 13, 32, 2));
// Store the result in c
int c()() = new int(N)(N) ;
int i, j;
mul(a, b, c); //calling the mul method
System.out.println("Multiplication result matrix" + " is ");
for (i = 0; i < N; i++)
(
for (j = 0; j < N; j++)
System.out.print( c(i)(j) + " ");
System.out.println();
)
)
)

Produzione:

Conclusione

Le matrici sono strutture di dati omogenee che possono memorizzare tipi simili di elementi. Può essere monodimensionale o multidimensionale. In questo documento, le matrici multidimensionali sono discusse spiegando la struttura della sintassi, l'inizializzazione, ecc.

Articoli consigliati

Questa è una guida all'array multidimensionale in Java. Qui discutiamo di 2 tipi di array multidimensionali in Java, come dichiarare, come inizializzare e operare al suo interno. Puoi anche consultare i nostri altri articoli correlati per saperne di più -

  1. Matrice multidimensionale in C
  2. Array 2D in Java
  3. Matrici 2D in C #
  4. PHP booleani
  5. Grafica 2D in Java
  6. Matrice multidimensionale in PHP
  7. Matrici multidimensionali in C ++ con esempi
  8. 3 diversi tipi di array in PHP (esempi)
  9. Matrici nella struttura dei dati
  10. Che cos'è una matrice di stringhe?
  11. Come funziona l'array in Unix con la sintassi?

Categoria: