Java ArrayDeque – removeIf()

Java Arraydeque Removeif



“java.util.ArrayDeque.removeIf() sa používa na odstránenie konkrétnych prvkov z objektu kolekcie ArrayDeque pomocou parametra – predikátu. Vyžaduje si podmienku, že ak je pravdivá, prvky v objekte, ktoré spĺňajú túto podmienku, sa z objektu zbierky odstránia.“

Syntax

arraydeque_object. odstrániťAk ( predikát filter_condition )

Kde arraydeque_object predstavuje kolekciu ArrayDeque.







Parameter



Vyžaduje predikát, ktorý nasleduje podmienku.



Poznámka





Ak je predikát nulový, potom a Výnimka NullPointerException je hodený.

Príklad 1

Tu vytvoríme kolekciu ArrayDeque s 5 prvkami typu String a odstránime reťazce, ktoré začínajú na „V“.



importovať java.util.* ;
importovať java.util.ArrayDeque ;

verejnosti trieda Hlavné
{
verejnosti statické neplatné hlavné ( Reťazec [ ] args ) {

// Vytvorenie ArrayDeque s názvom a_deque_object s typom String
Dequea_deque_object = Nový ArrayDeque ( ) ;

//Vložte do nej 5 reťazcov.
a_deque_object. pridať ( 'Sailaja' ) ;
a_deque_object. pridať ( 'Farana' ) ;
a_deque_object. pridať ( 'Úspech' ) ;
a_deque_object. pridať ( 'Vijaya' ) ;
a_deque_object. pridať ( 'vonku' ) ;

Systém . von . println ( 'Údaje prítomné v a_deque_object: ' + a_deque_object ) ;

//Odstránenie reťazcov začína na 'V'.
a_deque_object. odstrániťAk ( filter -> ( filter. charAt ( 0 ) == 'V' ) ) ;

Systém . von . println ( 'Po odstránení mien začína na V: ' + a_deque_object ) ;

}
}

Výkon:

Takže vidíme, že Vijaya a Vani sú dva reťazce začínajúce na „V“, takže sú odstránené z a_deque_object.

Tu je predikát použitý na filtrovanie týchto údajov – filter -> (filter.charAt(0) == ‘V’)

Tu sa filter vzťahuje na premennú.

Vysvetlenie

Riadok 9,18:

Vytvorte ArrayDeque s názvom a_dequeobject s typmi String a zobrazte ho

Riadok 21,23:

Teraz filtrujte a_deque_object s predikátom – filter -> (filter.charAt(0) == ‘V’)

Príklad 2

Tu vytvoríme kolekciu ArrayDeque s 5 prvkami typu Integer a odstránime hodnoty, ktoré sú väčšie ako 200.

importovať java.util.* ;
importovať java.util.ArrayDeque ;

verejnosti trieda Hlavné
{
verejnosti statické neplatné hlavné ( Reťazec [ ] args ) {

// Vytvorenie ArrayDeque s názvom a_deque_object s typom Integer
Dequea_deque_object = Nový ArrayDeque ( ) ;

//Vložte do neho 5 celých čísel.
a_deque_object. pridať ( 100 ) ;
a_deque_object. pridať ( 200 ) ;
a_deque_object. pridať ( 300 ) ;
a_deque_object. pridať ( 400 ) ;
a_deque_object. pridať ( 500 ) ;

Systém . von . println ( 'Údaje prítomné v a_deque_object: ' + a_deque_object ) ;

//Odstráňte hodnoty väčšie ako 200
a_deque_object. odstrániťAk ( filter -> ( filter > 200 ) ) ;
Systém . von . println ( 'Po odstránení hodnôt väčších ako 200: ' + a_deque_object ) ;

}
}

Výkon:

Takže môžeme vidieť, že 300,400 a 500 sú tri hodnoty, ktoré sú väčšie ako 200. Takže sú odstránené z a_deque_object.

Tu je predikát použitý na filtrovanie týchto údajov – filter -> (filter > 200)

Tu sa filter vzťahuje na premennú.

Vysvetlenie

Riadok 9,18:

Vytvorte ArrayDeque s názvom a_dequeobject s typmi Integer a zobrazte ho

Riadok 21,22:

Teraz filtrujte a_deque_object s predikátom – filter -> (filter > 200)

Príklad 3: Ukážka výnimky NullPointerException

Špecifikujme Null ako predikát.

importovať java.util.* ;
importovať java.util.ArrayDeque ;

verejnosti trieda Hlavné
{
verejnosti statické neplatné hlavné ( Reťazec [ ] args ) {

// Vytvorenie ArrayDeque s názvom a_deque_object s typom Integer
Dequea_deque_object = Nový ArrayDeque ( ) ;

//Vložte do nej 5 celých čísel.
a_deque_object. pridať ( 100 ) ;
a_deque_object. pridať ( 200 ) ;
a_deque_object. pridať ( 300 ) ;
a_deque_object. pridať ( 400 ) ;
a_deque_object. pridať ( 500 ) ;

Systém . von . println ( 'Údaje prítomné v a_deque_object: ' + a_deque_object ) ;

a_deque_object. odstrániťAk ( nulový ) ;

}
}

Výkon:

To vidíme Výnimka NullPointerException je zdvihnutý.

Záver

Videli sme, ako odstrániť prvky z objektu kolekcie ArrayDeque s predikátom pomocou metódy removeIf(). Uistite sa, že ste nezadali hodnotu null, pretože to vedie k výnimke NullPointerException. Diskutovali sme o dvoch príkladoch použitím rôznych podmienok v predikáte a demonštrovali sme aj výnimku NullPointerException.