Java ArrayDeque – removeIf()

Java Arraydeque Removeif



“java.util.ArrayDeque.removeIf() se uporablja za odstranitev določenega elementa/-ov iz objekta zbirke ArrayDeque z uporabo parametra – predikata. Zahteva tak pogoj, da če je resničen, se elementi v objektu, ki izpolnjuje ta pogoj, odstranijo iz predmeta zbirke.«

Sintaksa

arraydeque_object. odstraniIf ( predikat filter_pogoj )

Kje arraydeque_object predstavlja zbirko ArrayDeque.







Parameter



Potrebuje predikat, ki sledi pogoju.



Opomba





Če je predikat nič, potem a NullPointerException je vržen.

Primer 1

Tukaj bomo ustvarili zbirko ArrayDeque s 5 elementi tipa String in odstranili nize, ki se začnejo z 'V'.



uvoz java.util.* ;
uvoz java.util.ArrayDeque ;

javnosti razred Glavni
{
javnosti statična praznina glavni ( Vrvica [ ] args ) {

// Ustvari ArrayDeque z imenom a_deque_object z vrsto String
Dequea_deque_object = novo ArrayDeque ( ) ;

//Vanj vstavite 5 nizov.
a_deque_object. dodati ( 'Sailaja' ) ;
a_deque_object. dodati ( 'Farana' ) ;
a_deque_object. dodati ( 'Uspeh' ) ;
a_deque_object. dodati ( 'Vijaya' ) ;
a_deque_object. dodati ( 'zunaj' ) ;

Sistem . ven . println ( 'Podatki so v a_deque_object: ' + a_deque_object ) ;

//Odstrani nize, ki se začnejo z 'V'.
a_deque_object. odstraniIf ( filter -> ( filter. charAt ( 0 ) == 'V' ) ) ;

Sistem . ven . println ( 'Po odstranitvi se imena začnejo z V:' + a_deque_object ) ;

}
}

Izhod:

Tako lahko vidimo, da sta Vijaya in Vani dva niza, ki se začneta z 'V', zato sta odstranjena iz a_deque_object.

Tukaj je predikat, uporabljen za filtriranje teh podatkov – filter -> (filter.charAt(0) == 'V')

Tu se filter nanaša na spremenljivko.

Razlaga

Vrstica 9,18:

Ustvarite ArrayDeque z imenom a_dequeobject z vrstami nizov in ga prikažite

Vrstica 21,23:

Zdaj filtrirajte a_deque_object s predikatom – filter -> (filter.charAt(0) == 'V')

Primer 2

Tukaj bomo ustvarili zbirko ArrayDeque s 5 elementi tipa Integer in odstranili vrednosti, ki so večje od 200.

uvoz java.util.* ;
uvoz java.util.ArrayDeque ;

javnosti razred Glavni
{
javnosti statična praznina glavni ( Vrvica [ ] args ) {

// Ustvari ArrayDeque z imenom a_deque_object s tipom Integer
Dequea_deque_object = novo ArrayDeque ( ) ;

//Vanj vstavi 5 celih števil.
a_deque_object. dodati ( 100 ) ;
a_deque_object. dodati ( 200 ) ;
a_deque_object. dodati ( 300 ) ;
a_deque_object. dodati ( 400 ) ;
a_deque_object. dodati ( 500 ) ;

Sistem . ven . println ( 'Podatki so v a_deque_object: ' + a_deque_object ) ;

//Odstrani vrednosti, večje od 200
a_deque_object. odstraniIf ( filter -> ( filter > 200 ) ) ;
Sistem . ven . println ( 'Po odstranitvi vrednosti, večjih od 200: ' + a_deque_object ) ;

}
}

Izhod:

Tako lahko vidimo, da so 300,400 in 500 tri vrednosti, ki so večje od 200. Torej so odstranjene iz a_deque_object.

Tukaj je predikat, uporabljen za filtriranje teh podatkov – filter -> (filter > 200)

Tu se filter nanaša na spremenljivko.

Razlaga

Vrstica 9,18:

Ustvarite ArrayDeque z imenom a_dequeobject s tipi Integer in ga prikažite

Vrstica 21,22:

Zdaj filtrirajte a_deque_object s predikatom – filter -> (filter > 200)

Primer 3: Prikaz izjeme NullPointerException

Določimo Null kot predikat.

uvoz java.util.* ;
uvoz java.util.ArrayDeque ;

javnosti razred Glavni
{
javnosti statična praznina glavni ( Vrvica [ ] args ) {

// Ustvari ArrayDeque z imenom a_deque_object s tipom Integer
Dequea_deque_object = novo ArrayDeque ( ) ;

//Vanj vstavi 5 celih števil.
a_deque_object. dodati ( 100 ) ;
a_deque_object. dodati ( 200 ) ;
a_deque_object. dodati ( 300 ) ;
a_deque_object. dodati ( 400 ) ;
a_deque_object. dodati ( 500 ) ;

Sistem . ven . println ( 'Podatki so v a_deque_object: ' + a_deque_object ) ;

a_deque_object. odstraniIf ( nič ) ;

}
}

Izhod:

To lahko vidimo NullPointerException je dvignjen.

Zaključek

Videli smo, kako odstraniti elemente iz predmeta zbirke ArrayDeque s predikatom z uporabo metode removeIf(). Prepričajte se, da ne navedete null, saj povzroči izjemo NullPointerException. Razpravljali smo o dveh primerih z uporabo različnih pogojev v predikatu in tudi prikazali izjemo NullPointerException.