Mengonversi ArrayList Dua Dimensi ke Array di Java
Dalam pemrograman Java, Anda mungkin menemukan situasi di mana Anda perlu mengonversi ArrayList dua dimensi ke array dua dimensi. Ada beberapa cara untuk mencapai hal ini, dan artikel ini akan memandu Anda melalui prosesnya.
1. Menggunakan Loop Berlapis
Salah satu cara yang paling mudah untuk mengonversi ArrayList dua dimensi ke array adalah dengan menggunakan loop berlapis.
Berikut langkah-langkahnya:
- Deklarasikan array dengan ukuran yang sama dengan ArrayList.
- Gunakan loop for berlapis untuk iterasi melalui ArrayList dan isi elemen array.
Berikut contoh kode yang menunjukkan implementasi ini:
import java.util.ArrayList;
import java.util.List;
public class ArrayListToArray {
public static void main(String[] args) {
// Membuat ArrayList dua dimensi
List> arrayList = new ArrayList<>();
arrayList.add(List.of(1, 2, 3));
arrayList.add(List.of(4, 5, 6));
// Menentukan ukuran array
int rows = arrayList.size();
int cols = arrayList.get(0).size();
// Deklarasikan array dua dimensi
int[][] array = new int[rows][cols];
// Mengisi array menggunakan loop berlapis
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
array[i][j] = arrayList.get(i).get(j);
}
}
// Mencetak array
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
System.out.print(array[i][j] + " ");
}
System.out.println();
}
}
}
Kode ini akan menghasilkan output sebagai berikut:
1 2 3
4 5 6
2. Menggunakan Stream API
Java 8 memperkenalkan Stream API yang memungkinkan Anda melakukan operasi dengan cara yang lebih deklaratif. Anda dapat menggunakan Stream API untuk mengonversi ArrayList dua dimensi ke array dengan cara yang lebih ringkas.
Berikut contoh kode yang menunjukkan implementasi ini:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class ArrayListToArray {
public static void main(String[] args) {
// Membuat ArrayList dua dimensi
List> arrayList = new ArrayList<>();
arrayList.add(List.of(1, 2, 3));
arrayList.add(List.of(4, 5, 6));
// Mengonversi ArrayList ke array menggunakan Stream API
int[][] array = arrayList.stream()
.map(innerList -> innerList.stream().mapToInt(Integer::intValue).toArray())
.toArray(int[][]::new);
// Mencetak array
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length; j++) {
System.out.print(array[i][j] + " ");
}
System.out.println();
}
}
}
Kode ini akan menghasilkan output yang sama dengan kode sebelumnya.
Kesimpulan
Mengonversi ArrayList dua dimensi ke array di Java dapat dilakukan dengan mudah menggunakan loop berlapis atau dengan menggunakan Stream API. Pilih metode yang paling sesuai dengan kebutuhan dan gaya coding Anda.