Metoda Java ArrayList removeIf () iz seznama odstrani vse elemente, ki izpolnjujejo določen pogoj.
Sintaksa removeIf()
metode je:
arraylist.removeIf(Predicate filter)
Tu je arraylist predmet ArrayList
razreda.
removeIf () Parametri
removeIf()
Postopek traja samo en parameter.
- filter - odloči, ali bo element odstranjen
removeIf () Vrnjena vrednost
- vrne,
true
če je element odstranjen iz seznama.
Primer: s seznama ArrayList odstranite parne številke
import java.util.ArrayList; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList numbers = new ArrayList(); // add elements to the ArrayList numbers.add(1); numbers.add(2); numbers.add(3); numbers.add(4); numbers.add(5); numbers.add(6); System.out.println("Numbers: " + numbers); // remove all even numbers numbers.removeIf(e -> (e % 2) == 0);; System.out.println("Odd Numbers: " + numbers); ) )
Izhod
Številke: (1, 2, 3, 4, 5, 6) Neparne številke: (1, 3, 5)
V zgornjem primeru smo ustvarili seznam izbranih številk. Opazite vrstico,
numbers.removeIf(e -> (e % 2) == 0);
Tukaj,
e -> (e % 2) == 0)
je lambda izraz. Preveri, ali je element deljen z 2. Če želite izvedeti več, obiščite Java Lambda Expression.removeIf()
- Odstranite element, če see -> (e % 2) == 0
vrnetrue
.
Primer 2: Odstranite države z imenom "land"
import java.util.ArrayList; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList countries = new ArrayList(); // add elements to the ArrayList countries.add("Iceland"); countries.add("America"); countries.add("Ireland"); countries.add("Canada"); countries.add("Greenland"); System.out.println("Countries: " + countries); // remove all even countries countries.removeIf(e -> e.contains("land"));; System.out.println("Countries without land: " + countries); ) )
Izhod
Države: (Islandija, Amerika, Irska, Kanada, Grenlandija) Države brez zemlje: (Amerika, Kanada)
V zgornjem primeru smo z metodo Java String contains () preverili, ali element vsebuje zemljo . Tukaj,
e -> e.contains("land")
- vrne,true
če element v sebi vsebuje zemljoremoveIf()
- odstrani element, če see -> e.contains("land")
vrnetrue
.