Java Multidimensional Array (matrice 2d și 3d)

În acest tutorial, vom învăța despre matricea multidimensională Java folosind tablouri bidimensionale și tablouri tridimensionale cu ajutorul exemplelor.

Înainte de a afla despre matricea multidimensională, asigurați-vă că știți despre matricea Java.

O matrice multidimensională este o matrice de matrice. Fiecare element al unui tablou multidimensional este un tablou în sine. De exemplu,

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

Aici, am creat o matrice multidimensională numită a. Este o matrice bidimensională, care poate conține maximum 12 elemente,

Matrice bidimensională

Amintiți-vă, Java folosește indexarea bazată pe zero, adică indexarea matricilor în Java începe cu 0 și nu cu 1.

Să luăm un alt exemplu de matrice multidimensională. De data aceasta vom crea o matrice tridimensională. De exemplu,

 String()()() data = new String(3)(4)(2);

Aici, datele sunt o matrice 3D care poate conține maximum 24 (3 * 4 * 2) elemente de tip String.

Cum se inițializează o matrice 2d în Java?

Iată cum putem inițializa o matrice bidimensională în Java.

 int()() a = ( (1, 2, 3), (4, 5, 6, 9), (7), );

După cum putem vedea, fiecare element al matricei multidimensionale este un tablou în sine. Și, de asemenea, spre deosebire de C / C ++, fiecare rând al matricei multidimensionale din Java poate avea lungimi diferite.

Inițializarea matricei bidimensionale

Exemplu: matrice bidimensională

 class MultidimensionalArray ( public static void main(String() args) ( // create a 2d array int()() a = ( (1, 2, 3), (4, 5, 6, 9), (7), ); // calculate the length of each row System.out.println("Length of row 1: " + a(0).length); System.out.println("Length of row 2: " + a(1).length); System.out.println("Length of row 3: " + a(2).length); ) )

Ieșire :

 Lungimea rândului 1: 3 Lungimea rândului 2: 4 Lungimea rândului 3: 1

În exemplul de mai sus, creăm o matrice multidimensională numită a. Deoarece fiecare componentă a unei matrice multidimensionale este, de asemenea, o matrice ( a(0), a(1)și a(2)sunt, de asemenea, matrici).

Aici, folosim lengthatributul pentru a calcula lungimea fiecărui rând.

Exemplu: Imprimați toate elementele matricei 2d folosind Loop

 class MultidimensionalArray ( public static void main(String() args) ( int()() a = ( (1, -2, 3), (-4, -5, 6, 9), (7), ); for (int i = 0; i < a.length; ++i) ( for(int j = 0; j < a(i).length; ++j) ( System.out.println(a(i)(j)); ) ) ) )

Ieșire :

 1 -2 3 -4 -5 6 9 7

De asemenea, putem folosi pentru … fiecare buclă pentru a accesa elementele matricei multidimensionale. De exemplu,

 class MultidimensionalArray ( public static void main(String() args) ( // create a 2d array int()() a = ( (1, -2, 3), (-4, -5, 6, 9), (7), ); // first for… each loop access the individual array // inside the 2d array for (int() innerArray: a) ( // second for… each loop access each element inside the row for(int data: innerArray) ( System.out.println(data); ) ) ) )

Ieșire :

 1 -2 3 -4 -5 6 9 7

În exemplul de mai sus, am creat o matrice 2d numită a. Apoi am folosit forbucla și for… eachbucla pentru a accesa fiecare element al matricei.

Cum se inițializează o matrice 3d în Java?

Să vedem cum putem folosi o matrice 3d în Java. Putem inițializa o matrice 3d similară matricei 2d. De exemplu,

 // test is a 3d array int()()() test = ( ( (1, -2, 3), (2, 3, 4) ), ( (-4, -5, 6, 9), (1), (2, 3) ) );

Practic, o matrice 3d este o matrice de matrice 2d. Rândurile unui tablou 3d pot varia, de asemenea, în lungime la fel ca într-un tablou 2d.

Exemplu: matrice tridimensională

 class ThreeArray ( public static void main(String() args) ( // create a 3d array int()()() test = ( ( (1, -2, 3), (2, 3, 4) ), ( (-4, -5, 6, 9), (1), (2, 3) ) ); // for… each loop to iterate through elements of 3d array for (int()() array2D: test) ( for (int() array1D: array2D) ( for(int item: array1D) ( System.out.println(item); ) ) ) ) )

Ieșire :

 1 -2 3 2 3 4 -4 -5 6 9 1 2 3

Articole interesante...