Sintaksis
arraydeque_object. hapusJika ( predikat filter_condition )Di mana arraydeque_object mewakili koleksi ArrayDeque.
Parameter
Dibutuhkan predikat yang mengikuti kondisi.
Catatan
Jika predikatnya nol, maka a NullPointerException dilempar.
Contoh 1
Di sini, kita akan membuat koleksi ArrayDeque dengan elemen tipe 5 String dan menghapus string yang dimulai dengan 'V'.
impor java.util.* ;
impor java.util.ArrayDeque ;
publik kelas Utama
{
publik statis ruang kosong utama ( Rangkaian [ ] argumen ) {
// Buat ArrayDeque bernama a_deque_object dengan tipe String
Dequea_deque_object = baru ArrayDeque ( ) ;
//Masukkan 5 string ke dalamnya.
a_deque_objek. menambahkan ( 'Sailaja' ) ;
a_deque_objek. menambahkan ( 'Farana' ) ;
a_deque_objek. menambahkan ( 'Kesuksesan' ) ;
a_deque_objek. menambahkan ( 'Wijaya' ) ;
a_deque_objek. menambahkan ( 'di luar' ) ;
Sistem . keluar . println ( 'Data ada di a_deque_object: ' + a_deque_objek ) ;
//Hapus string yang dimulai dengan 'V'.
a_deque_objek. hapusJika ( Saring -> ( Saring. charAt ( 0 ) == 'DI' ) ) ;
Sistem . keluar . println ( 'Setelah menghapus nama dimulai dengan V :' + a_deque_objek ) ;
}
}
Keluaran:
Jadi kita bisa melihat bahwa Vijaya dan Vani adalah dua string yang dimulai dengan “V”, jadi mereka dihapus dari a_deque_object.
Di sini predikat yang digunakan untuk memfilter data ini adalah – filter -> (filter.charAt(0) == ‘V’)
Di sini filter mengacu pada variabel.
Penjelasan
Baris 9,18:
Buat ArrayDeque bernama a_dequeobject dengan tipe String dan Tampilkan itu
Baris 21,23:
Sekarang filter a_deque_object dengan predikat – filter -> (filter.charAt(0) == ‘V’)
Contoh 2
Di sini, kita akan membuat koleksi ArrayDeque dengan 5 elemen tipe Integer dan menghapus nilai yang lebih besar dari 200.
impor java.util.* ;impor java.util.ArrayDeque ;
publik kelas Utama
{
publik statis ruang kosong utama ( Rangkaian [ ] argumen ) {
// Buat ArrayDeque bernama a_deque_object dengan tipe Integer
Dequea_deque_object = baru ArrayDeque ( ) ;
//Masukkan 5 Integer ke dalamnya.
a_deque_objek. menambahkan ( 100 ) ;
a_deque_objek. menambahkan ( 200 ) ;
a_deque_objek. menambahkan ( 300 ) ;
a_deque_objek. menambahkan ( 400 ) ;
a_deque_objek. menambahkan ( 500 ) ;
Sistem . keluar . println ( 'Data ada di a_deque_object: ' + a_deque_objek ) ;
//Hapus nilai yang lebih besar dari 200
a_deque_objek. hapusJika ( Saring -> ( Saring > 200 ) ) ;
Sistem . keluar . println ( 'Setelah menghapus nilai yang lebih besar dari 200: ' + a_deque_objek ) ;
}
}
Keluaran:
Jadi kita dapat melihat bahwa 300.400 dan 500 adalah tiga nilai yang lebih besar dari 200. Jadi mereka dihapus dari a_deque_object.
Di sini predikat yang digunakan untuk memfilter data ini adalah – filter -> (filter> 200)
Di sini filter mengacu pada variabel.
Penjelasan
Baris 9,18:
Buat ArrayDeque bernama a_dequeobject dengan tipe Integer dan Tampilkan itu
Baris 21,22:
Sekarang filter a_deque_object dengan predikat – filter -> (filter> 200)
Contoh 3: Mendemonstrasikan NullPointerException
Mari kita tentukan Null sebagai predikat.
impor java.util.* ;impor java.util.ArrayDeque ;
publik kelas Utama
{
publik statis ruang kosong utama ( Rangkaian [ ] argumen ) {
// Buat ArrayDeque bernama a_deque_object dengan tipe Integer
Dequea_deque_object = baru ArrayDeque ( ) ;
//Masukkan 5 bilangan bulat ke dalamnya.
a_deque_objek. menambahkan ( 100 ) ;
a_deque_objek. menambahkan ( 200 ) ;
a_deque_objek. menambahkan ( 300 ) ;
a_deque_objek. menambahkan ( 400 ) ;
a_deque_objek. menambahkan ( 500 ) ;
Sistem . keluar . println ( 'Data ada di a_deque_object: ' + a_deque_objek ) ;
a_deque_objek. hapusJika ( batal ) ;
}
}
Keluaran:
Kita bisa melihat itu NullPointerException dibangkitkan.
Kesimpulan
Kami melihat cara menghapus elemen dari objek koleksi ArrayDeque dengan Predikat menggunakan metode removeIf(). Pastikan Anda tidak menentukan null, karena menghasilkan NullPointerException. Kami membahas dua contoh dengan menerapkan kondisi yang berbeda dalam predikat dan juga mendemonstrasikan NullPointerException.