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.

Ragged array di pemrograman Java

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

Ragged array di pemrograman Java

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.