Banner Java

Larik (Array) dengan jumlah elemen kolom berbeda

Anda dimungkinkan untuk membuat larik berdimensi dua atau lebih dengan elemen berupa larik lain yang mempunyai jumlah elemen berbeda. Misalnya, sebuah larik berdimensi dua dapat diberi elemen dengan jumlah berbeda untuk setiap kolom. Larik semacam ini sering disebut dengan ragged array. Gambar di bawah ini memberikan kejelasan tentang larik dimensi dua dengan jumlah elemen kolom berbeda.

Untuk mendeklarasikan variabel dan membuat larik semacam ini, Anda hanya perlu menentukan nilai subcribe atau indek pertama yang mewakili jumlah elemen baris dan untuk subcribe atau indek kedua yang mewakili jumlah elemen kolom dikosongkan karena jumlah elemen masing-masing kolom untuk larik tabel berbeda. Berikut ini adalah sintaksis pendeklarasian variabel dan pembuatan larik tabel dengan jumlah elemen kolom berbeda:

   int[][] tabel = new int[2][];

Apabila nilai elemen kolom larik tabel belum diketahui tetapi sudah diketahui jumlah elemen masing-masing kolom larik (sebagaimana gambar di atas), kolom larik tabel dibuat terpisah karena jumlah elemennya yang tidak sama.

   int[][] tabel = new int[2][];
   tabel[0] = new int[4];
   tabel[1] = new int[2];
   tabel[2] = new int[3];

Berikut ini adalah contoh program larik dimensi dua dengan jumlah elemen untuk setiap kolom berbeda.

// Nama file : RaggedArray.java
// Menampilkan elemen larik dimensi dua

// Mengimpor Java predifined class
import javax.swing.JOptionPane;
import javax.swing.JTextArea;

// Deklarasi kelas
public class RaggedArray {

   // Metode main
   public static void main(String[] args) {

      int[ ][ ] tabel = {{10, 11, 12, 13},
                         {14, 15},
                         {16, 17, 18}};
  
      JTextArea areaTampilan;
      areaTampilan = new JTextArea();
      areaTampilan.setText("Menampilkan larik berdimensi dua :\n");
      areaTampilan.append("int[ ][ ] tabel = new int[2][ ]\n\n");
      
      // Menampilkan elemen larik tabel
      for (int baris = 0; baris < tabel.length; baris++) {
         for(int kolom = 0; kolom < tabel[baris].length; kolom++)
            areaTampilan.append(tabel[baris][kolom] + "  ");
         areaTampilan.append("\n");
      }

      JOptionPane.showMessageDialog(null, areaTampilan,
         "Ragged Array", JOptionPane.INFORMATION_MESSAGE);

      // Mengakhiri aplikasi berpenampilan GUI
      System.exit(0);
   }
}

Baris nomor 14 adalah pernyataan untuk mendeklarasikan variabel larik tabel, membuat dan menginisialisi regged array. Nilai elemen larik kemudian dibaca dan diletakkan di variabel areaTampilan menggunakan perulangan for tersarang (baris nomor 24 – 28). Perulangan for bagian luar melakukan iterasi sebanyak jumlah baris dan perulangan for bagian dalam melakukan iterasi sebanyak jumlah kolom larik tabel.

Ragged array

Baca artikel terkait lainnya:

Untuk memperbaiki mutu konten, Anda dapat berpartisipasi dengan cara melaporkan apabila menemukan kesalahan ketik, kata-kata rangkap, redaksi kurang pas (jelas), gambar pendukung tidak ada dan sebagainya melalui form Kontak Kami untuk mendapatkan perbaikan. Terima kasih atas kerjasamanya.

Hindro HindriantoHindro adalah pendiri sekaligus admin termasmedia.com dan topikit.com, blog online yang mengulas teknologi informasi. Dunia web mulai ditekuni tahun 2012 dengan mempelajari CMS Joomla dan Wordpress. Beberapa buku yang sekarang dipelajari antara lain PHP, HTML5, ASP.NET 4.5, JavaScript, CSS3, MySQL, Adobe Dreamweaver, Adobe Photoshop dan Adobe Flash.