Syntaks
arraydeque_object. fjerneHvis ( prædikat filter_tilstand )Hvor arraydeque_object repræsenterer ArrayDeque-kollektionen.
Parameter
Det kræver et prædikat, der følger tilstanden.
Bemærk
Hvis prædikatet er nul, så a NullPointerException bliver kastet.
Eksempel 1
Her vil vi oprette en ArrayDeque-samling med 5 strengtypeelementer og fjerne de strenge, der starter med 'V'.
importere java.util.* ;
importere java.util.ArrayDeque ;
offentlig klasse Hoved
{
offentlig statisk ugyldig vigtigste ( Snor [ ] args ) {
// Opret ArrayDeque med navnet a_deque_object med String-type
Dequea_deque_object = ny ArrayDeque ( ) ;
//Indsæt 5 strenge i den.
et_deque_objekt. tilføje ( 'Sailaja' ) ;
et_deque_objekt. tilføje ( 'Farana' ) ;
et_deque_objekt. tilføje ( 'Succes' ) ;
et_deque_objekt. tilføje ( 'Vijaya' ) ;
et_deque_objekt. tilføje ( 'uden for' ) ;
System . ud . println ( 'Data til stede i a_deque_object: ' + et_deque_objekt ) ;
//Fjern strengene starter med 'V'.
et_deque_objekt. fjerneHvis ( filter -> ( filter. tegnAt ( 0 ) == 'I' ) ) ;
System . ud . println ( 'Efter fjernelse af navnene starter med V : ' + et_deque_objekt ) ;
}
}
Produktion:
Så vi kan se, at Vijaya og Vani er de to strenge, der starter med 'V', så de fjernes fra a_deque_object.
Her er prædikatet, der bruges til at filtrere disse data - filter -> (filter.charAt(0) == 'V')
Her refererer filteret til variablen.
Forklaring
Linje 9,18:
Opret en ArrayDeque med navnet a_dequeobject med strengtyper og vis den
Linje 21,23:
Filtrer nu a_deque_object med prædikatet – filter -> (filter.charAt(0) == 'V')
Eksempel 2
Her vil vi oprette en ArrayDeque-samling med 5 integer-elementer og fjerne de værdier, der er større end 200.
importere java.util.* ;importere java.util.ArrayDeque ;
offentlig klasse Hoved
{
offentlig statisk ugyldig vigtigste ( Snor [ ] args ) {
// Opret ArrayDeque med navnet a_deque_object med heltalstypen
Dequea_deque_object = ny ArrayDeque ( ) ;
//Indsæt 5 heltal i det.
et_deque_objekt. tilføje ( 100 ) ;
et_deque_objekt. tilføje ( 200 ) ;
et_deque_objekt. tilføje ( 300 ) ;
et_deque_objekt. tilføje ( 400 ) ;
et_deque_objekt. tilføje ( 500 ) ;
System . ud . println ( 'Data til stede i a_deque_object: ' + et_deque_objekt ) ;
//Fjern værdier større end 200
et_deque_objekt. fjerneHvis ( filter -> ( filter > 200 ) ) ;
System . ud . println ( 'Efter fjernelse af værdier større end 200: ' + et_deque_objekt ) ;
}
}
Produktion:
Så vi kan se, at 300.400 og 500 er de tre værdier, der er større end 200. Så de er fjernet fra a_deque_object.
Her er prædikatet, der bruges til at filtrere disse data - filter -> (filter > 200)
Her refererer filteret til variablen.
Forklaring
Linje 9,18:
Opret en ArrayDeque ved navn a_dequeobject med heltalstyper og vis den
Linje 21,22:
Filtrer nu a_deque_object med prædikatet – filter -> (filter > 200)
Eksempel 3: Demonstrering af NullPointerException
Lad os specificere Null som et prædikat.
importere java.util.* ;importere java.util.ArrayDeque ;
offentlig klasse Hoved
{
offentlig statisk ugyldig vigtigste ( Snor [ ] args ) {
// Opret ArrayDeque med navnet a_deque_object med heltalstypen
Dequea_deque_object = ny ArrayDeque ( ) ;
//Indsæt 5 heltal i det.
et_deque_objekt. tilføje ( 100 ) ;
et_deque_objekt. tilføje ( 200 ) ;
et_deque_objekt. tilføje ( 300 ) ;
et_deque_objekt. tilføje ( 400 ) ;
et_deque_objekt. tilføje ( 500 ) ;
System . ud . println ( 'Data til stede i a_deque_object: ' + et_deque_objekt ) ;
et_deque_objekt. fjerneHvis ( nul ) ;
}
}
Produktion:
Det kan vi se NullPointerException er hævet.
Konklusion
Vi så, hvordan man fjerner elementerne fra et ArrayDeque-samlingsobjekt med et prædikat ved hjælp af removeIf()-metoden. Sørg for, at du ikke angiver null, da det resulterer i en NullPointerException. Vi diskuterede to eksempler ved at anvende forskellige betingelser i prædikatet og demonstrerede også NullPointerException.