I den här handledningen lär vi oss Java-flerdimensionella matriser med hjälp av 2-dimensionella matriser och 3-dimensionella matriser med hjälp av exempel.
Innan vi lär oss om den flerdimensionella matrisen, se till att du känner till Java-matrisen.
En flerdimensionell matris är en matris med matriser. Varje element i en flerdimensionell array är en array i sig. Till exempel,
int()() a = new int(3)(4);
Här har vi skapat en flerdimensionell matris med namnet a. Det är en tvådimensionell matris som rymmer maximalt 12 element,

Kom ihåg att Java använder nollbaserad indexering, det vill säga indexering av matriser i Java börjar med 0 och inte 1.
Låt oss ta ett annat exempel på den flerdimensionella matrisen. Den här gången skapar vi en tredimensionell matris. Till exempel,
String()()() data = new String(3)(4)(2);
Här är data en 3d-array som kan rymma maximalt 24 (3 * 4 * 2) element av typen String
.
Hur initierar jag en 2d-array i Java?
Här är hur vi kan initiera en tvådimensionell matris i Java.
int()() a = ( (1, 2, 3), (4, 5, 6, 9), (7), );
Som vi kan se är varje element i den flerdimensionella arrayen en array i sig. Och till skillnad från C / C ++ kan varje rad i den flerdimensionella matrisen i Java ha olika längder.

Exempel: 2-dimensionell matris
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); ) )
Utgång :
Radlängd 1: 3 Radlängd 2: 4 Radlängd 3: 1
I exemplet ovan skapar vi en flerdimensionell matris med namnet a. Eftersom varje komponent i en flerdimensionell array är också en array ( a(0)
, a(1)
och a(2)
är också arrayer).
Här använder vi length
attributet för att beräkna längden på varje rad.
Exempel: Skriv ut alla element i 2d-array med 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)); ) ) ) )
Utgång :
1 -2 3 -4 -5 6 9 7
Vi kan också använda för … varje slinga för att komma åt element i den flerdimensionella matrisen. Till exempel,
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); ) ) ) )
Utgång :
1 -2 3 -4 -5 6 9 7
I exemplet ovan har vi skapat en 2d-grupp med namnet a. Vi använde sedan for
loop and for… each
loop för att komma åt varje element i arrayen.
Hur initierar jag en 3D-array i Java?
Låt oss se hur vi kan använda en 3d-array i Java. Vi kan initialisera en 3d-array som liknar 2d-arrayen. Till exempel,
// test is a 3d array int()()() test = ( ( (1, -2, 3), (2, 3, 4) ), ( (-4, -5, 6, 9), (1), (2, 3) ) );
I grund och botten är en 3d-array en array med 2d-matriser. Raderna i en 3d-array kan också variera i längd precis som i en 2d-array.
Exempel: 3-dimensionell matris
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); ) ) ) ) )
Utgång :
1 -2 3 2 3 4 -4 -5 6 9 1 2 3