Syntaks
arraydeque_object. fjerneHvis ( predikat filter_condition )Hvor arraydeque_object representerer ArrayDeque-samlingen.
Parameter
Det krever et predikat som følger tilstanden.
Merk
Hvis predikatet er null, så a NullPointerException blir kastet.
Eksempel 1
Her vil vi lage en ArrayDeque-samling med 5 strengtypeelementer og fjerne strengene som starter med 'V'.
import java.util.* ;
import java.util.ArrayDeque ;
offentlig klasse Hoved
{
offentlig statisk tomrom hoved- ( String [ ] args ) {
// Opprett ArrayDeque kalt a_deque_object med strengtype
Dequea_deque_object = ny ArrayDeque ( ) ;
//Sett inn 5 strenger i den.
et_deque_objekt. legge til ( 'Sailaja' ) ;
et_deque_objekt. legge til ( 'Farana' ) ;
et_deque_objekt. legge til ( 'Suksess' ) ;
et_deque_objekt. legge til ( 'Vijaya' ) ;
et_deque_objekt. legge til ( 'utenfor' ) ;
System . ute . println ( 'Data tilstede i a_deque_object: ' + et_deque_objekt ) ;
//Fjern strengene starter med 'V'.
et_deque_objekt. fjerneHvis ( filter -> ( filter. charAt ( 0 ) == 'I' ) ) ;
System . ute . println ( 'Etter at du har fjernet navnene starter med V : ' + et_deque_objekt ) ;
}
}
Produksjon:
Så vi kan se at Vijaya og Vani er de to strengene som begynner med 'V', så de fjernes fra a_deque_object.
Her er predikatet som brukes til å filtrere disse dataene - filter -> (filter.charAt(0) == 'V')
Her refererer filteret til variabelen.
Forklaring
Linje 9,18:
Lag en ArrayDeque kalt a_dequeobject med strengtyper og vis den
Linje 21,23:
Filtrer nå a_deque_object med predikatet – filter -> (filter.charAt(0) == 'V')
Eksempel 2
Her vil vi lage en ArrayDeque-samling med 5 integer-elementer og fjerne verdiene som er større enn 200.
import java.util.* ;import java.util.ArrayDeque ;
offentlig klasse Hoved
{
offentlig statisk tomrom hoved- ( String [ ] args ) {
// Opprett ArrayDeque kalt a_deque_object med heltallstype
Dequea_deque_object = ny ArrayDeque ( ) ;
//Sett inn 5 heltall i den.
et_deque_objekt. legge til ( 100 ) ;
et_deque_objekt. legge til ( 200 ) ;
et_deque_objekt. legge til ( 300 ) ;
et_deque_objekt. legge til ( 400 ) ;
et_deque_objekt. legge til ( 500 ) ;
System . ute . println ( 'Data tilstede i a_deque_object: ' + et_deque_objekt ) ;
//Fjern verdiene større enn 200
et_deque_objekt. fjerneHvis ( filter -> ( filter > 200 ) ) ;
System . ute . println ( 'Etter at du har fjernet verdiene større enn 200: ' + et_deque_objekt ) ;
}
}
Produksjon:
Så vi kan se at 300 400 og 500 er de tre verdiene som er større enn 200. Så de er fjernet fra a_deque_object.
Her er predikatet som brukes til å filtrere disse dataene - filter -> (filter > 200)
Her refererer filteret til variabelen.
Forklaring
Linje 9,18:
Lag en ArrayDeque kalt a_dequeobject med heltallstyper og vis den
Linje 21,22:
Filtrer nå a_deque_object med predikatet – filter -> (filter > 200)
Eksempel 3: Demonstrerer NullPointerException
La oss spesifisere Null som et predikat.
import java.util.* ;import java.util.ArrayDeque ;
offentlig klasse Hoved
{
offentlig statisk tomrom hoved- ( String [ ] args ) {
// Opprett ArrayDeque kalt a_deque_object med heltallstype
Dequea_deque_object = ny ArrayDeque ( ) ;
//Sett inn 5 heltall i den.
et_deque_objekt. legge til ( 100 ) ;
et_deque_objekt. legge til ( 200 ) ;
et_deque_objekt. legge til ( 300 ) ;
et_deque_objekt. legge til ( 400 ) ;
et_deque_objekt. legge til ( 500 ) ;
System . ute . println ( 'Data tilstede i a_deque_object: ' + et_deque_objekt ) ;
et_deque_objekt. fjerneHvis ( null ) ;
}
}
Produksjon:
Det kan vi se NullPointerException er hevet.
Konklusjon
Vi så hvordan du fjerner elementene fra et ArrayDeque-samlingsobjekt med et predikat ved å bruke removeIf()-metoden. Pass på at du ikke spesifiserer null, da det resulterer i et NullPointerException. Vi diskuterte to eksempler ved å bruke forskjellige betingelser i predikatet og demonstrerte også NullPointerException.