Java többdimenziós tömb (2d és 3d tömb)

Ebben az oktatóanyagban megismerhetjük a Java többdimenziós tömböt kétdimenziós tömbök és háromdimenziós tömbök segítségével, példák segítségével.

Mielőtt megtudnánk a többdimenziós tömböt, győződjön meg róla, hogy tud a Java tömbről.

A többdimenziós tömb tömbtömb. A többdimenziós tömb minden eleme maga egy tömb. Például,

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

Itt létrehoztunk egy a nevű többdimenziós tömböt. Ez egy kétdimenziós tömb, amely maximum 12 elemet képes befogadni,

2-dimenziós tömb

Ne feledje, hogy a Java nulla alapú indexelést használ, vagyis a tömbök indexelése a Java-ban 0-val kezdődik, és nem 1-vel.

Vegyünk egy másik példát a többdimenziós tömbre. Ezúttal létrehozunk egy háromdimenziós tömböt. Például,

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

Itt az adatok egy 3D tömb, amely maximum 24 (3 * 4 * 2) típusú elemet képes befogadni String.

Hogyan lehet inicializálni a 2d tömböt a Java-ban?

Így inicializálhatunk egy kétdimenziós tömböt a Java-ban.

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

Mint láthatjuk, a többdimenziós tömb minden eleme maga a tömb. És a C / C ++ -val ellentétben a Java többdimenziós tömbjének minden sora különböző hosszúságú lehet.

2-dimenziós tömb inicializálása

Példa: 2-dimenziós tömb

 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); ) )

Kimenet :

 Az 1. sor hossza: 3 A 2. sor hossza: 4 A 3. sor hossza: 1

A fenti példában létrehozunk egy a nevű többdimenziós tömböt. Mivel a többdimenziós tömb minden alkotóeleme egyben tömb is ( a(0), a(1)és a(2)egyben tömb is).

Itt az lengthattribútumot használjuk az egyes sorok hosszának kiszámításához.

Példa: A 2d tömb összes elemének kinyomtatása a Loop használatával

 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)); ) ) ) )

Kimenet :

 1 -2 3 -4 -5 6 9 7

Használhatjuk a… minden hurokhoz a többdimenziós tömb elemeinek elérését is. Például,

 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); ) ) ) )

Kimenet :

 1 -2 3 -4 -5 6 9 7

A fenti példában létrehoztunk egy 2d tömböt, amelynek neve a. Ezután a forhurok és a for… eachhurok segítségével érjük el a tömb egyes elemeit.

Hogyan lehet inicializálni a 3D tömböt a Java-ban?

Nézzük meg, hogyan használhatunk egy 3D tömböt a Java-ban. Inicializálhatunk egy 3D tömböt, hasonlóan a 2d tömbhöz. Például,

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

Alapvetően a 3d tömb 2d tömb tömb. A 3d tömb sorai hosszúságban is változhatnak, akárcsak egy 2d tömbben.

Példa: 3-dimenziós tömb

 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); ) ) ) ) )

Kimenet :

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

érdekes cikkek...