Java ArrayDeque – removeIf()

Java Arraydeque Removeif



'java.util.ArrayDeque.removeIf() kasutatakse teatud elementide eemaldamiseks ArrayDeque'i kogumisobjektist, kasutades parameetrit - predikaat. Selleks on vaja tingimust, et kui see on tõene, eemaldatakse kogu objektist objekti elemendid, mis sellele tingimusele vastavad.

Süntaks

arraydeque_object. eemalda Kui ( predikaat filter_tingimus )

Kus arraydeque_object esindab ArrayDeque kollektsiooni.







Parameeter



See võtab tingimusele järgneva predikaadi.



Märge





Kui predikaat on null, siis a NullPointerException visatakse.

Näide 1

Siin loome 5 String tüüpi elemendiga ArrayDeque kollektsiooni ja eemaldame stringid, mis algavad tähega 'V'.



importida java.util.* ;
importida java.util.ArrayDeque ;

avalik klass Peamine
{
avalik staatiline tühine peamine ( String [ ] args ) {

// Looge stringitüübiga ArrayDeque nimega a_deque_object
Dequea_deque_object = uus ArrayDeque ( ) ;

//Sisestage sellesse 5 stringi.
a_deque_object. lisama ( 'Sailaja' ) ;
a_deque_object. lisama ( 'Farana' ) ;
a_deque_object. lisama ( 'Edu' ) ;
a_deque_object. lisama ( 'Vijaya' ) ;
a_deque_object. lisama ( 'väljas' ) ;

Süsteem . välja . println ( 'A_deque_objectis olevad andmed:' + a_deque_object ) ;

//Eemalda stringid, mis algavad tähega 'V'.
a_deque_object. eemalda Kui ( filter -> ( filter. charAt ( 0 ) == 'IN' ) ) ;

Süsteem . välja . println ( 'Pärast nimede eemaldamist algab V-ga :' + a_deque_object ) ;

}
}

Väljund:

Seega näeme, et Vijaya ja Vani on kaks stringi, mis algavad tähega 'V', nii et need eemaldatakse objektist a_deque_object.

Siin on nende andmete filtreerimiseks kasutatav predikaat - filter -> (filter.charAt(0) == ‘V’)

Siin viitab filter muutujale.

Selgitus

Rida 9,18:

Looge stringitüüpidega ArrayDeque nimega a_dequeobject ja kuvage see

Rida 21,23:

Nüüd filtreerige objekt a_deque_object predikaadiga - filter -> (filter.charAt(0) == ‘V’)

Näide 2

Siin loome 5 täisarvu tüüpi elemendiga ArrayDeque kollektsiooni ja eemaldame väärtused, mis on suuremad kui 200.

importida java.util.* ;
importida java.util.ArrayDeque ;

avalik klass Peamine
{
avalik staatiline tühine peamine ( String [ ] args ) {

// Looge täisarvtüübiga ArrayDeque nimega a_deque_object
Dequea_deque_object = uus ArrayDeque ( ) ;

//Sisestage sinna 5 täisarvu.
a_deque_object. lisama ( 100 ) ;
a_deque_object. lisama ( 200 ) ;
a_deque_object. lisama ( 300 ) ;
a_deque_object. lisama ( 400 ) ;
a_deque_object. lisama ( 500 ) ;

Süsteem . välja . println ( 'A_deque_objectis olevad andmed:' + a_deque_object ) ;

//Eemaldage väärtused, mis on suuremad kui 200
a_deque_object. eemalda Kui ( filter -> ( filter > 200 ) ) ;
Süsteem . välja . println ( 'Pärast 200-st suuremate väärtuste eemaldamist:' + a_deque_object ) ;

}
}

Väljund:

Seega näeme, et 300 400 ja 500 on kolm väärtust, mis on suuremad kui 200. Seega eemaldatakse need objektist a_deque_object.

Siin on nende andmete filtreerimiseks kasutatav predikaat - filter -> (filter > 200)

Siin viitab filter muutujale.

Selgitus

Rida 9,18:

Looge täisarvu tüüpidega ArrayDeque nimega a_dequeobject ja kuvage see

Rida 21,22:

Nüüd filtreerige objekt a_deque_object predikaadiga - filter -> (filter > 200)

Näide 3: NullPointerExceptioni demonstreerimine

Määrame predikaadiks Null.

importida java.util.* ;
importida java.util.ArrayDeque ;

avalik klass Peamine
{
avalik staatiline tühine peamine ( String [ ] args ) {

// Looge täisarvtüübiga ArrayDeque nimega a_deque_object
Dequea_deque_object = uus ArrayDeque ( ) ;

//Sisestage sinna 5 täisarvu.
a_deque_object. lisama ( 100 ) ;
a_deque_object. lisama ( 200 ) ;
a_deque_object. lisama ( 300 ) ;
a_deque_object. lisama ( 400 ) ;
a_deque_object. lisama ( 500 ) ;

Süsteem . välja . println ( 'A_deque_objectis olevad andmed:' + a_deque_object ) ;

a_deque_object. eemalda Kui ( null ) ;

}
}

Väljund:

Me näeme seda NullPointerException tõstetakse üles.

Järeldus

Nägime, kuidas eemaldada elemente ArrayDeque'i kogumisobjektist predikaadiga, kasutades meetodit removeIf(). Veenduge, et te ei määraks nulli, kuna selle tulemuseks on NullPointerException. Arutasime kahte näidet, rakendades predikaadis erinevaid tingimusi, ja demonstreerisime ka NullPointerExceptioni.