U ovom uputstvu naučit ćemo o Java višedimenzionalnom nizu pomoću dvodimenzionalnih nizova i trodimenzionalnih nizova uz pomoć primjera.
Prije nego što naučimo o višedimenzionalnom nizu, provjerite jeste li znali za Java niz.
Višedimenzionalni niz je niz nizova. Svaki element višedimenzionalnog niza sam je niz. Na primjer,
int()() a = new int(3)(4);
Ovdje smo stvorili višedimenzionalni niz nazvan a. To je dvodimenzionalni niz koji može sadržavati najviše 12 elemenata,
![](https://cdn.wiki-base.com/7903024/java_multidimensional_array_2d_and_3d_array.jpg.webp)
Zapamtite, Java koristi indeksiranje temeljeno na nuli, odnosno indeksiranje nizova u Javi započinje s 0, a ne s 1.
Uzmimo još jedan primjer višedimenzionalnog niza. Ovaj put ćemo stvoriti trodimenzionalni niz. Na primjer,
String()()() data = new String(3)(4)(2);
Ovdje su podaci 3d niz koji može sadržavati najviše 24 (3 * 4 * 2) elementa tipa String
.
Kako inicijalizirati 2d niz u Javi?
Evo kako možemo inicijalizirati dvodimenzionalni niz u Javi.
int()() a = ( (1, 2, 3), (4, 5, 6, 9), (7), );
Kao što vidimo, svaki element višedimenzionalnog niza je sam niz. Također, za razliku od C / C ++, svaki red višedimenzionalnog niza u Javi može biti različitih duljina.
![](https://cdn.wiki-base.com/7903024/java_multidimensional_array_2d_and_3d_array_2.jpg.webp)
Primjer: 2-dimenzionalni niz
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); ) )
Izlaz :
Duljina reda 1: 3 Duljina reda 2: 4 Duljina reda 3: 1
U gornjem primjeru stvaramo višedimenzionalni niz nazvan a. Budući da je svaka komponenta višedimenzionalnog niza također niz ( a(0)
, a(1)
a a(2)
ujedno su i nizovi).
Ovdje koristimo length
atribut za izračunavanje duljine svakog retka.
Primjer: Ispis svih elemenata 2d polja pomoću 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)); ) ) ) )
Izlaz :
1 -2 3 -4 -5 6 9 7
Također možemo koristiti for … svaku petlju za pristup elementima višedimenzionalnog niza. Na primjer,
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); ) ) ) )
Izlaz :
1 -2 3 -4 -5 6 9 7
U gornjem primjeru stvorili smo 2d niz nazvan a. Zatim smo koristili for
petlju i for… each
petlju za pristup svakom elementu niza.
Kako inicijalizirati 3d niz u Javi?
Pogledajmo kako možemo koristiti 3d niz u Javi. Možemo inicijalizirati 3d niz sličan 2d nizu. Na primjer,
// test is a 3d array int()()() test = ( ( (1, -2, 3), (2, 3, 4) ), ( (-4, -5, 6, 9), (1), (2, 3) ) );
U osnovi, 3d niz je niz od 2d niza. Duljine 3d niza također se mogu razlikovati u duljini kao u 2d nizu.
Primjer: trodimenzionalni niz
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); ) ) ) ) )
Izlaz :
1 -2 3 2 3 4 -4 -5 6 9 1 2 3