Multidimenzionálne pole Java (pole 2d a 3d)

V tomto tutoriále sa pomocou príkladov dozvieme viacrozmerné pole Java pomocou dvojrozmerných polí a trojrozmerných polí.

Predtým, ako sa dozvieme o viacrozmernom poli, uistite sa, že viete o poli Java.

Viacrozmerné pole je pole polí. Každý prvok viacrozmerného poľa je pole sám o sebe. Napríklad,

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

Tu sme vytvorili multidimenzionálne pole s názvom a. Jedná sa o dvojrozmerné pole, ktoré môže obsahovať maximálne 12 prvkov,

2-rozmerné pole

Pamätajte, že Java používa indexovanie založené na nule, to znamená, že indexovanie polí v Jave začína 0 a nie 1.

Zoberme si ďalší príklad multidimenzionálneho poľa. Tentokrát budeme vytvárať trojrozmerné pole. Napríklad,

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

Dáta sú tu 3d pole, ktoré pojme maximálne 24 (3 * 4 * 2) prvkov typu String.

Ako inicializovať 2D pole v Jave?

Takto môžeme inicializovať 2-dimenzionálne pole v Jave.

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

Ako vidíme, každý prvok viacrozmerného poľa je sám osebe. A tiež na rozdiel od C / C ++ môže mať každý riadok multidimenzionálneho poľa v Jave rôznu dĺžku.

Inicializácia 2-dimenzionálneho poľa

Príklad: 2-rozmerné pole

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

Výstup :

 Dĺžka radu 1: 3 Dĺžka radu 2: 4 Dĺžka radu 3: 1

Vo vyššie uvedenom príklade vytvárame multidimenzionálne pole s názvom a. Pretože každá zložka viacrozmerného poľa je tiež poľom ( a(0), a(1)a a(2)sú to tiež polia).

Tu pomocou lengthatribútu vypočítame dĺžku každého riadku.

Príklad: Vytlačte všetky prvky 2d poľa pomocou slučky

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

Výstup :

 1 -2 3 -4 -5 6 9 7

Môžeme tiež použiť každú… slučku na prístup k prvkom viacrozmerného poľa. Napríklad,

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

Výstup :

 1 -2 3 -4 -5 6 9 7

Vo vyššie uvedenom príklade sme vytvorili 2D pole s názvom a. Potom sme použili forslučku a for… eachslučku na prístup ku každému prvku poľa.

Ako inicializovať 3d pole v Jave?

Pozrime sa, ako môžeme v Jave použiť 3d pole. Môžeme inicializovať 3d pole podobné 2D poli. Napríklad,

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

V zásade je 3d pole pole 2d polí. Riadky 3d poľa sa môžu tiež líšiť v dĺžke, rovnako ako v 2D poli.

Príklad: trojrozmerné pole

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

Výstup :

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

Zaujímavé články...