Mengonversi Array Dua Dimensi ke ArrayList di Java
Artikel ini akan membahas cara mengonversi array dua dimensi ke ArrayList di Java.
Apa itu Array Dua Dimensi?
Array dua dimensi di Java adalah struktur data yang menyimpan elemen-elemen dalam bentuk tabel atau matriks. Setiap elemen dalam array dua dimensi memiliki dua indeks, yaitu indeks baris dan indeks kolom.
Mengonversi Array Dua Dimensi ke ArrayList
Ada beberapa cara untuk mengonversi array dua dimensi ke ArrayList di Java:
-
Menggunakan Loop Berlapis:
Cara ini paling mudah dipahami. Anda dapat menggunakan loop berlapis untuk iterasi melalui setiap elemen dalam array dua dimensi dan menambahkannya ke ArrayList baru.
public static void main(String[] args) { // Mendefinisikan array dua dimensi int[][] array2D = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; // Membuat ArrayList baru ArrayList
arrayList = new ArrayList<>(); // Iterasi melalui array dua dimensi dan menambahkannya ke ArrayList for (int i = 0; i < array2D.length; i++) { for (int j = 0; j < array2D[i].length; j++) { arrayList.add(array2D[i][j]); } } // Mencetak ArrayList System.out.println(arrayList); } -
Menggunakan Streams:
Java 8 memperkenalkan streams yang memungkinkan Anda memproses koleksi data dengan cara yang lebih fungsional. Anda dapat menggunakan streams untuk mengonversi array dua dimensi ke ArrayList.
public static void main(String[] args) { // Mendefinisikan array dua dimensi int[][] array2D = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; // Mengonversi array dua dimensi ke ArrayList menggunakan streams ArrayList
arrayList = Arrays.stream(array2D) .flatMapToInt(Arrays::stream) .boxed() .collect(Collectors.toCollection(ArrayList::new)); // Mencetak ArrayList System.out.println(arrayList); }
Penjelasan Kode
Kode 1 (Menggunakan Loop Berlapis):
- Kode ini mendeklarasikan array dua dimensi
array2D
dengan nilai integer. - Kemudian, kode membuat ArrayList baru
arrayList
untuk menyimpan elemen-elemen dari array dua dimensi. - Kode menggunakan loop berlapis untuk iterasi melalui setiap baris dan kolom dari array dua dimensi.
- Setiap elemen dalam array dua dimensi kemudian ditambahkan ke ArrayList
arrayList
menggunakan metodeadd()
. - Terakhir, kode mencetak ArrayList
arrayList
.
Kode 2 (Menggunakan Streams):
- Kode ini mendeklarasikan array dua dimensi
array2D
dengan nilai integer. - Kode menggunakan
Arrays.stream(array2D)
untuk membuat stream dari array dua dimensi. - Kemudian, kode menggunakan
flatMapToInt(Arrays::stream)
untuk meratakan array dua dimensi menjadi stream satu dimensi. - Kode menggunakan
boxed()
untuk mengembalikan stream dari integer. - Terakhir, kode menggunakan
collect(Collectors.toCollection(ArrayList::new))
untuk mengumpulkan stream ke dalam ArrayList baru.
Kesimpulan
Mengonversi array dua dimensi ke ArrayList di Java dapat dilakukan dengan berbagai cara, termasuk menggunakan loop berlapis atau streams. Pilihlah metode yang paling sesuai dengan kebutuhan Anda.