Tässä opetusohjelmassa opitaan Java-moniulotteisesta taulukosta 2-ulotteisten ja 3-ulotteisten taulukoiden avulla esimerkkien avulla.
Ennen kuin opit moniulotteisesta taulukosta, varmista, että tiedät Java-matriisista.
Moniulotteinen taulukko on matriisiryhmä. Jokainen moniulotteisen taulukon elementti on itse taulukko. Esimerkiksi,
int()() a = new int(3)(4);
Tässä olemme luoneet moniulotteisen taulukon nimeltä a. Se on 2-ulotteinen taulukko, johon mahtuu enintään 12 elementtiä,

Muista, että Java käyttää nollapohjaista indeksointia, ts. Java-taulukoiden indeksointi alkaa 0: lla eikä 1: llä.
Otetaan toinen esimerkki moniulotteisesta taulukosta. Tällä kertaa luomme kolmiulotteisen taulukon. Esimerkiksi,
String()()() data = new String(3)(4)(2);
Tässä data on 3D-taulukko, johon mahtuu enintään 24 (3 * 4 * 2) tyyppistä elementtiä String
.
Kuinka aloittaa 2d-taulukko Java-tilassa?
Näin voimme alustaa 2-ulotteisen taulukon Java-sovelluksessa.
int()() a = ( (1, 2, 3), (4, 5, 6, 9), (7), );
Kuten voimme nähdä, jokainen moniulotteisen taulukon elementti on itse taulukko. Ja toisin kuin C / C ++, jokainen Java-moniulotteisen taulukon rivi voi olla eripituinen.

Esimerkki: 2-ulotteinen taulukko
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); ) )
Tuotos :
Rivin pituus 1: 3 Rivin pituus 2: 4 Rivin pituus 3: 1
Yllä olevassa esimerkissä luomme moniulotteisen taulukon nimeltä a. Koska moniulotteisen taulukon kukin komponentti on myös taulukko ( a(0)
, a(1)
ja a(2)
ovat myös taulukoita).
Tässä käytetään length
attribuuttia kunkin rivin pituuden laskemiseen.
Esimerkki: Tulosta kaikki 2d-ryhmän elementit Loop-toiminnolla
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)); ) ) ) )
Tuotos :
1 -2 3-4-5 6 9 7
Voimme myös käyttää - jokaiselle silmukalle - pääsyä moniulotteisen taulukon elementteihin. Esimerkiksi,
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); ) ) ) )
Tuotos :
1 -2 3-4-5 6 9 7
Yllä olevassa esimerkissä olemme luoneet 2d-taulukon nimeltä a. Sitten käytimme for
silmukkaa ja for… each
silmukkaa päästäksesi matriisin jokaiseen elementtiin.
Kuinka alustaa 3D-taulukko Java-tilassa?
Katsotaanpa, kuinka voimme käyttää 3d-taulukkoa Java-tilassa. Voimme alustaa 3D-taulukon, joka on samanlainen kuin 2d-taulukko. Esimerkiksi,
// test is a 3d array int()()() test = ( ( (1, -2, 3), (2, 3, 4) ), ( (-4, -5, 6, 9), (1), (2, 3) ) );
Pohjimmiltaan 3d-matriisi on 2d-matriisiryhmä. 3D-taulukon rivit voivat myös vaihdella pituudeltaan aivan kuten 2d-taulukossa.
Esimerkki: 3-ulotteinen taulukko
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); ) ) ) ) )
Tuotos :
1 -2 3 2 3 4-4-5 6 9 1 2 3