Sekarang
kita akan mempelajari array 2D, konsepnya hampir sama dengan array 1D, tetapi
array 2D ini mempunyai baris dan kolom, untuk pengaksesan array ini tetap
menggunakan indeks array tetapi yang digunakan adalah indeks baris dan indeks kolom,
nanti untuk loopingnya kita gunakan looping 2 layer, maksudnya didalam looping
ada looping lagi atau biasa disebut nested loop, daripada bingung… langsung
lihat aja source code-nya...
Pada
baris ke-14 sampai ke-16, adalah proses deklarasi array dua dimensi, dan
menentukan isi dari baris dan kolomnya, sebenarnya banyak cara untuk deklarasi
array ini, pie pada kesempatan kali saya menggunakan yang tipe ini.
Untuk
lebih mudah mempelajarinya, saya nanti akan membuat outputan yang berisi daftar
kelompok, Kelompok Pertama berisikan {Roni, Rista, Yogi, Irfan}, lalu kelompok
Kedua berisikan {Hanafi, Slamet, Romza, Nina}, lalu yang terakhir atau Kelompok
Ketiga berisikan {Wahyu, Fiki, Lusi, Ali}.
Cara
membuat outputan seperti itu bisa dilihat pada baris ke-20 sampai baris ke-29, looping
for yang pertama atau layer 1, digunakan untuk pengaksesan baris, looping for
yang kedua atau layer 2, digunakan untuk pengaksesan kolom baris ke-i, nie
urutan-urutan eksekesinya simak dengan baik.
Langkah
1.
Pertama
deklarasi variabel baris dengan nilai 0,
Langkah
2.
Lalu,
pengecekan kondisi apakah baris < kelompok.length ,
sekarang nilai baris adalah 0, sedangkan nilai kelompok.length adalah 3
jadi apakah 0<3, maka hasilnya benar(True).
Langkah
3.
Jika
hasil dari kondisi tersebut bernilai
benar(True) maka akan mengeksekusi baris perintah yang di dalam looping
for layer 1, lihat baris 21 sampai baris
28 itulah perintah yang ada pada looping for layer 1, lalu akan mengerjakan
baris demi baris, pertama akan mengeksekusi System.out.println(“Daftar
Kelompok ke-”+ (++idxBaris)); perintah ini adalah untuk mencetak Daftar
Kelompok ke-idxBaris, sedangkan idxBaris mempunyai nilai 1, jadi hasilnya akan
mencetak Daftar Kelompok ke-1, lalu akan mengeksekusi baris berikutnya, dan
kebetulan baris berikutnya adalah looping for, berikut alur eksekusi untuk looping for layer
2.
Langkah 3.1
Deklarasi variabel kolom dengan nilai 0.
Langkah 3.2
Lalu
Pengecekan kondisi looping for layer 2, apakah kelompok < kelompok[baris].length,
nilai variabel kelompok sekarang adalah 0 sedangkan nilai kelompok[baris].length
adalah 4, mengapa bernilai 4, mari kita cek statement kelompok[baris].length statement
ini digunakan untuk mengakses kolom………baris ke-0, sedangkan jumlah kolom pada
baris ke-0 adalah 4, jadi nilai kelompok[baris].length adalah 4 dan
derpadat perbedaan statement untuk mengakses kolom dan baris, jika ingin
mengakses sebuah baris maka statementnya baris < kelompok.length sedangkan
untuk mengakses sebuah kolom pada baris menggunakan statement kelompok[baris].length.
Kembali
ke pengecekan kondisi kelompok < kelompok[baris].length jadi
apakah 0 < 4 maka hasilnya adalah benar(True).
Langkah 3.3
Jika kondisi Looping For Layer 2 ini
bernilai benar(True) maka akan mengeksekusi baris perintah yang terdapat di Looping
For Layer 2 lihat baris-24, System.out.println(++idxKolom + “. ”+kelompok[baris][kolom])
maksudnya adalah akan mencetak nilai dari idxKolom sedangkan nilai idxKolom
sudah diincrement jadi nilainya 1, terus kelompok[baris][kolom] lah ini inti
pengaksesan array 2 Dimensinya, maksudnya nanti akan mencetak nilai dari
kelompok indeks baris ke-baris dan
indeks kolom ke-kolom , nilai dari baris adalah 0 dan kolom masih 0, jadi si-java akan mencetak array kelompok[0][0], dan isinya adalah
‘Rony’.
Langkah 3.4
Jika sudah mengeksekusi kode program yang didalam Looping For Layer
2, lalu si java akan menaikkan nilai variabel kolom , yang semula bernilai 0 sekarang berubah menjadi 1, lalu
si-java akan kembali ke Langkah 3.2, Langkah 3.3, Langkah 3.4, begitu
seterusnya…sampai kondisi looping for layer 2 ini bernilai salah, dan looping
for layer 2 ini akan selesai lalu akan melanjutkan kode program yang di bawah
struktur looping for layer 2 lihat baris- 26 sampai 28 itu adalah kode program
dibawah struktur looping for layer 2.
Ini masih didalam langkah 3, tetapi
masih didalam Looping For Layer 1 dan diluar Looping For Layer 2, lihat baris
ke-27 dan 28 perintahnya simpel untuk yang baris ke-27 menginisialisasi
variabel idxKolom menjadi 0, lalu yang berikutnya cuman mencetak doank.
Langkah
4.
Setelah mengeksekusi semua baris
perintah yang terdapat didalam Looping For Layer 1, maka si-java akan menaikkan
nilai variabel baris, dan akan kembali ke Langkah 2, Langkah 3 dan sub-sub Langkah
3, dan kembali menaikkan variabel baris di Langkah 4, dan looping ini akan
berakhir ketika kondisi looping for layer 1 salah.
Dan inilah hasil outputnya.
Semoga penjelasan diatas dapat bermanfaat bagi kalian. :-D Good Luck Selamat Mencoba
Tidak ada komentar:
Posting Komentar