1. susunan Jagged
Minangka programmer Jawa sampeyan ora mung bisa ngganti larik saka array loro-dimensi, nanging uga mbangun array nanging pengin.
Ayo dadi ngomong sampeyan pengin baris pisanan Uploaded loro-dimensi duwe dawa 10
, lan sampeyan pengin dawa baris kapindho dadi 50
. Apa kita bisa nindakake iku? Ya, kita bisa.
Kaping pisanan, kita kudu nggawe 'wadhah wadhah' - iki minangka array pisanan, sing bakal nyimpen referensi kanggo larik baris. Mangkene carane ditindakake:
int[][] name = new int[height][];
Sampeyan mung ngilangi dimensi kapindho , lan mesin Java nggawe wadhah wadhah. Iki sing bakal ana ing memori sawise nglakokake kode iki:

Lan, uga, sampeyan wis ngerti carane nggawe array siji-dimensi 🙂
Iki bakal katon kaya kode asil:
|
Array loro-dimensi Baris nol minangka susunan 10 unsur Baris pisanan minangka susunan 50 unsur |
Kita wis nggawe sing disebut " jagged array ".
Lan yen saiki kita pengin nampilake kabeh unsur array iki ing layar, banjur properti array length
bakal migunani: sawise kabeh, dawa baris array beda-beda.
Ngomong-ngomong, kepiye sampeyan nemokake dawane 'wadhah wadhah' ing conto kita? Iki uga minangka obyek array, sing tegese nduweni dawa. Jawaban sing bener yaiku matrix.length
.
Kepiye babagan susunan sing kalebu baris kita?matrix[0].length
2. Nggarap array rong dimensi
Upaminipun sampeyan pengin nampilake array loro-dimensi. Kepiye carane nindakake?
Kode kita bakal katon kaya iki:
|
Nggawe larik Isi larik karo nilai Outer loop sing iterator liwat larik saka larik. Inner loop sing iterates liwat sel saka baris siji. |
Sampeyan butuh rong puteran nested. Pisanan kita nelpon njaba , lan kaloro - njero .
Ing daur ulang njaba ( i
variabel), kita kanthi urut ngliwati kabeh baris (array) sing nggawe array rong dimensi. Saben nilai i
cocog karo baris karo indeks kasebut.
Ing daur ulang batin ( j
variabel), kita ngulang kabeh sel ing baris kasebut. Thanks kanggo daur ulang njero, baris, sing kasusun saka nilai-nilai array siji-dimensi, bakal ditampilake ing layar.
Iki sing bakal ditampilake:
Siji baris array diproses |
|
Rong larik array diproses |
|
Telung larik array diproses |
|
3. Susunan multidimensi
Kasunyatan sing luwih menarik babagan array, sing mbokmenawa wis sampeyan duga. Yen sampeyan bisa nggawe array rong dimensi, sampeyan bisa nggawe array telung dimensi?
Ya, sampeyan bisa nggawe array saka ukuran apa wae. Array kasebut diarani 'multidimensional'.
Mung kanggo seneng-seneng, ayo nggawe array multidimensi sing duwe 4 dimensi.
int[][][][] matrix = new int[2][3][4][5];
Kode iki prasaja banget, ta?
Apa yen sampeyan nggawe kanthi manual?
int[][][][] matrix;
matrix = new int[2][][][]; // Create a 2-element array of references to references to references
for (int i = 0; i < matrix.length; i++)
{
matrix[i] = new int[3][][]; // Create a 3-element array of references to references
for (j = 0; j < matrix[i].length; j++)
{
matrix[i][j] = new int[4][]; // Create a 4-element array of references
for (k = 0; k < matrix[i][j].length; k++)
matrix[i][j][k] = new int[5]; // Create 5-element arrays of integers
}
}
Lan mung nggawe array! Banjur sampeyan uga kudu bisa karo piye wae.
Tugas bonus: nulis kode sing nampilake kabeh nilai ing array telung dimensi.
GO TO FULL VERSION