Java - Hapus null dari daftar Objek [duplikat]
Nov 19 2020
Saya memiliki objek daftar java berukuran besar sebagai berikut:
List<Object[]> res = // repo method that will return query result
Saya harus menghapus nulls dari objek res.
Saya mencoba metode di bawah ini sejauh ini tetapi tidak ada yang berhasil:
1. res.remove(null);
2. res.removeAll(Collections.singleton(null));
3. res.removeAll(null);
4. while(res.remove(null));
Bagaimana cara menghapus null secara efisien karena ukuran daftar akan menjadi sangat besar?
Jawaban
6 NikolasCharalambidis Nov 19 2020 at 17:48
Daftar yang bisa berubah
Anda dapat menggunakan List::removeIfdengan predikat mendeteksi nullitem.
List<Object[]> mutableList = new ArrayList<>(Arrays.asList(
new Object[] {},
null,
new Object[] {}));
mutableList.removeIf(Objects::isNull);
Daftar yang tidak bisa diubah
Dalam hal ini Anda harus menggunakan Stream API atau for-loop untuk menemukan elemen bukan null dan menambahkannya ke daftar baru.
List<Object[]> immutableList = Arrays.asList(
new Object[] {},
null,
new Object[] {});
List<Object[]> newList = immutableList.stream()
.filter(Objects::nonNull)
.collect(Collectors.toList());
Kiat Pemilik Anjing yang Bermanfaat: Mengapa Penting untuk Membiarkan Anjing Anda Mengendus di Jalan
Jana Duggar: Semua yang Dia Katakan Tentang Cinta dan Jendela 5 Tahunnya untuk Menemukan 'Yang Satu'