Java ArrayDeque - removeIf()

Java Arraydeque Removeif



'java.util.ArrayDeque.removeIf() käytetään tiettyjen elementtien poistamiseen ArrayDeque-kokoelmaobjektista käyttämällä parametria - predikaattia. Se vaatii sellaisen ehdon, että jos se on tosi, objektin elementit, jotka täyttävät tämän ehdon, poistetaan kokoelmaobjektista.'

Syntaksi

arraydeque_object. poista Jos ( predikaatti filter_condition )

Missä arraydeque_object edustaa ArrayDeque-kokoelmaa.







Parametri



Se vaatii predikaatin, joka seuraa ehtoa.



Merkintä





Jos predikaatti on nolla, niin a NullPointerException heitetään.

Esimerkki 1

Täällä luomme ArrayDeque-kokoelman, jossa on 5 merkkijonotyyppistä elementtiä ja poistamme merkkijonot, jotka alkavat kirjaimella 'V'.



tuonti java.util.* ;
tuonti java.util.ArrayDeque ;

julkinen luokkaa Main
{
julkinen staattinen mitätön pää ( merkkijono [ ] args ) {

// Luo ArrayDeque nimeltä a_deque_object ja merkkijonotyyppi
Dequea_deque_object = Uusi ArrayDeque ( ) ;

//Lisää siihen 5 merkkijonoa.
a_deque_object. lisätä ( 'Sailaja' ) ;
a_deque_object. lisätä ( 'Farana' ) ;
a_deque_object. lisätä ( 'Menestys' ) ;
a_deque_object. lisätä ( 'Vijaya' ) ;
a_deque_object. lisätä ( 'ulkopuolella' ) ;

Järjestelmä . ulos . println ( 'A_deque_objectissa olevat tiedot: ' + a_deque_object ) ;

//Poista merkkijonot, jotka alkavat V:llä.
a_deque_object. poista Jos ( suodattaa -> ( suodattaa. charAt ( 0 ) == 'SISÄÄN' ) ) ;

Järjestelmä . ulos . println ( 'Nimien poistamisen jälkeen alkaa V:llä :' + a_deque_object ) ;

}
}

Lähtö:

Joten voimme nähdä, että Vijaya ja Vani ovat kaksi merkkijonoa, jotka alkavat 'V', joten ne poistetaan a_deque_objectista.

Tässä näiden tietojen suodattamiseen käytetty predikaatti on - suodatin -> (filter.charAt(0) == 'V')

Tässä suodatin viittaa muuttujaan.

Selitys

Rivi 9,18:

Luo ArrayDeque nimeltä a_dequeobject merkkijonotyypeillä ja näytä se

Rivi 21,23:

Suodata nyt a_deque_object predikaatilla - suodatin -> (filter.charAt(0) == 'V')

Esimerkki 2

Täällä luomme ArrayDeque-kokoelman, jossa on 5 Integer-tyyppistä elementtiä ja poistamme arvot, jotka ovat suurempia kuin 200.

tuonti java.util.* ;
tuonti java.util.ArrayDeque ;

julkinen luokkaa Main
{
julkinen staattinen mitätön pää ( merkkijono [ ] args ) {

// Luo ArrayDeque, jonka nimi on a_deque_object ja jonka tyyppi on kokonaisluku
Dequea_deque_object = Uusi ArrayDeque ( ) ;

//Lisää siihen 5 kokonaislukua.
a_deque_object. lisätä ( 100 ) ;
a_deque_object. lisätä ( 200 ) ;
a_deque_object. lisätä ( 300 ) ;
a_deque_object. lisätä ( 400 ) ;
a_deque_object. lisätä ( 500 ) ;

Järjestelmä . ulos . println ( 'A_deque_objectissa olevat tiedot: ' + a_deque_object ) ;

//Poista arvot, jotka ovat suuremmat kuin 200
a_deque_object. poista Jos ( suodattaa -> ( suodattaa > 200 ) ) ;
Järjestelmä . ulos . println ( 'Kun olet poistanut arvot, jotka ovat suurempia kuin 200: ' + a_deque_object ) ;

}
}

Lähtö:

Joten voimme nähdä, että 300 400 ja 500 ovat kolme arvoa, jotka ovat suurempia kuin 200. Joten ne poistetaan a_deque_objectista.

Tässä näiden tietojen suodattamiseen käytetty predikaatti on - suodatin -> (suodatin > 200)

Tässä suodatin viittaa muuttujaan.

Selitys

Rivi 9,18:

Luo ArrayDeque nimeltä a_dequeobject kokonaislukutyypeillä ja näytä se

Rivi 21,22:

Suodata nyt a_deque_object predikaatilla - suodatin -> (suodatin > 200)

Esimerkki 3: NullPointerExceptionin osoittaminen

Määritetään Null predikaatiksi.

tuonti java.util.* ;
tuonti java.util.ArrayDeque ;

julkinen luokkaa Main
{
julkinen staattinen mitätön pää ( merkkijono [ ] args ) {

// Luo ArrayDeque, jonka nimi on a_deque_object ja jonka tyyppi on kokonaisluku
Dequea_deque_object = Uusi ArrayDeque ( ) ;

//Lisää siihen 5 kokonaislukua.
a_deque_object. lisätä ( 100 ) ;
a_deque_object. lisätä ( 200 ) ;
a_deque_object. lisätä ( 300 ) ;
a_deque_object. lisätä ( 400 ) ;
a_deque_object. lisätä ( 500 ) ;

Järjestelmä . ulos . println ( 'A_deque_objectissa olevat tiedot: ' + a_deque_object ) ;

a_deque_object. poista Jos ( tyhjä ) ;

}
}

Lähtö:

Voimme nähdä sen NullPointerException on nostettu.

Johtopäätös

Näimme kuinka poistaa elementit ArrayDeque-kokoelmaobjektista Predikaatilla käyttämällä removeIf()-menetelmää. Varmista, että et määritä tyhjää, koska se johtaa NullPointerExceptioniin. Keskustelimme kahdesta esimerkistä soveltamalla erilaisia ​​ehtoja predikaatissa ja osoitimme myös NullPointerExceptionin.