Java ArrayList removeIf () yöntemi, belirtilen koşulu karşılayan tüm öğeleri dizi listesinden kaldırır.
removeIf()
Yöntemin sözdizimi şöyledir:
arraylist.removeIf(Predicate filter)
Burada dizi listesi, ArrayList
sınıfın bir nesnesidir .
removeIf () Parametreleri
removeIf()
Yöntem, tek bir parametre alır.
- filtre - bir elemanın kaldırılıp kaldırılmayacağına karar verir
removeIf () Dönüş Değeri
true
dizi listesinden bir öğe kaldırılırsa döndürür .
Örnek: DiziListesinden Çift Sayıları Kaldır
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); ) )
Çıktı
Sayılar: (1, 2, 3, 4, 5, 6) Tek Sayılar: (1, 3, 5)
Yukarıdaki örnekte, numbers adlı bir dizi listesi oluşturduk. Çizgiye dikkat edin,
numbers.removeIf(e -> (e % 2) == 0);
Buraya,
e -> (e % 2) == 0)
bir lambda ifadesidir. Bir öğenin 2'ye bölünüp bölünmediğini kontrol eder. Daha fazla bilgi için Java Lambda Expression adresini ziyaret edin.removeIf()
- eleman varsa kaldırıne -> (e % 2) == 0
getirilertrue
.
Örnek 2: Adında "arazi" bulunan Ülkeleri Kaldırma
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); ) )
Çıktı
Ülkeler: (İzlanda, Amerika, İrlanda, Kanada, Grönland) Topraksız ülkeler: (Amerika, Kanada)
Yukarıdaki örnekte, öğenin içinde arazi içerip içermediğini kontrol etmek için Java String contains () yöntemini kullandık . Buraya,
e -> e.contains("land")
- dönertrue
eleman içeriyorsa arazi içinderemoveIf()
-e -> e.contains("land")
dönerse öğeyi kaldırırtrue
.