Java flerdimensjonalt array (2d og 3d-array)

I denne opplæringen vil vi lære om Java flerdimensjonale matriser ved hjelp av 2-dimensjonale matriser og 3-dimensjonale matriser ved hjelp av eksempler.

Før vi lærer om det flerdimensjonale arrayet, må du sørge for at du vet om Java-arrayet.

En flerdimensjonal matrise er en rekke matriser. Hvert element i en flerdimensjonal matrise er en selve matrisen. For eksempel,

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

Her har vi opprettet et flerdimensjonalt utvalg kalt a. Det er en todimensjonal matrise som har plass til maksimalt 12 elementer,

2-dimensjonal matrise

Husk at Java bruker nullbasert indeksering, det vil si indeksering av matriser i Java starter med 0 og ikke 1.

La oss ta et annet eksempel på den flerdimensjonale matrisen. Denne gangen skal vi lage et tredimensjonalt utvalg. For eksempel,

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

Her er data en 3d-serie som kan inneholde maksimalt 24 (3 * 4 * 2) element av typen String.

Hvordan initialisere et 2d-utvalg i Java?

Slik kan vi initialisere en todimensjonal matrise i Java.

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

Som vi kan se, er hvert element i den flerdimensjonale matrisen en selve matrisen. Og i motsetning til C / C ++ kan hver rad i det flerdimensjonale arrayet i Java ha forskjellige lengder.

Initialisering av 2-dimensjonal matrise

Eksempel: 2-dimensjonal matrise

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

Utgang :

 Lengde på rad 1: 3 Lengde på rad 2: 4 Lengde på rad 3: 1

I eksemplet ovenfor lager vi et flerdimensjonalt utvalg kalt a. Siden hver komponent i en flerdimensjonal matrise også er en matrise ( a(0), a(1)og a(2)er også matriser).

Her bruker vi lengthattributtet til å beregne lengden på hver rad.

Eksempel: Skriv ut alle elementene i 2d-array ved hjelp av 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)); ) ) ) )

Utgang :

 1 -2 3 -4 -5 6 9 7

Vi kan også bruke for … hver sløyfe for å få tilgang til elementer i flerdimensjonalt array. For eksempel,

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

Utgang :

 1 -2 3 -4 -5 6 9 7

I eksemplet ovenfor har vi opprettet et 2d-utvalg kalt a. Vi brukte deretter forloop and for… eachloop for å få tilgang til hvert element i matrisen.

Hvordan initialisere et 3d-array i Java?

La oss se hvordan vi kan bruke et 3d-array i Java. Vi kan initialisere et 3d-array som ligner på 2d-arrayet. For eksempel,

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

I utgangspunktet er en 3d-serie en matrise med 2d-matriser. Radene i et 3d-array kan også variere i lengde, akkurat som i et 2d-array.

Eksempel: 3-dimensjonal matrise

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

Utgang :

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

Interessante artikler...