English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
يستخدم Java ArrayList removeIf() ل�除 جميع العناصر التي تفي بشرط معين من ArrayList.
جملة لغة البرمجة Java removeIf()
arraylist.removeIf(Predicate<E> filter)
filter - تقرير ما إذا كان يجب حذف العنصر
ملاحظة: إذا كان filter يعود true، يتم حذف العنصر.
إذا تم حذف عنصر من ArrayList، فإنه يعود true.
import java.util.ArrayList; class Main { public static void main(String[] args) { //إنشاء ArrayList ArrayList<Integer> numbers = new ArrayList<>(); //إضافة عنصر إلى ArrayList numbers.add(1); numbers.add(2); numbers.add(3); numbers.add(4); numbers.add(5); numbers.add(6); System.out.println("الرقم: " + numbers); //حذف جميع الأعداد الزوجية numbers.removeIf(e -> (e % 2) == 0);; System.out.println("العدد غير المزid: " + numbers); } }
نتيجة الخروج
الرقم: [1, 2, 3, 4, 5, 6] العدد غير المزid: [1, 3, 5]
في المثال السابق، قمنا بإنشاء ArrayList تحت اسم numbers. لاحظ هذا السطر،
numbers.removeIf(e -> (e % 2) == 0);
هنا،
e -> (e % 2) == 0) - هو تعبير لامبدا. يتحقق من أن العنصر يمكن تقسيمه على 2. للحصول على مزيد من المعلومات، يرجى زيارةتعبيرات Lambda في Java.
removeIf() - إذا كان (e % 2) == 0 يعود true، يتم حذف العنصر.
import java.util.ArrayList; class Main { public static void main(String[] args) { //إنشاء ArrayList ArrayList<String> countries = new ArrayList<>(); //إضافة عنصر إلى ArrayList countries.add("Iceland"); countries.add("America"); countries.add("Ireland"); countries.add("Canada"); countries.add("Greenland"); System.out.println("بلد: " + countries); //حذف جميع البلدان التي تحتوي على land countries.removeIf(e -> e.contains("land"));; System.out.println("أسماء البلدان التي لا تحتوي على "land": " + countries); } }
نتيجة الخروج
بلد: [آيسلندا، أمريكا، أيرلندا، كندا، جرينلاند] أسماء البلدان التي لا تحتوي على "land": [أمريكا، كندا]
في المثال السابق، استخدمناJava String contains()الطريقة لتحقق من ما إذا كان العنصر يحتوي على"land". هنا،
e -> e.contains("land") - إذا كان العنصر يحتوي على "land"، يعود الصحيح
removeIf() - إذا كان e-> e.contains("land") يعود الصحيح، قم بإزالة العنصر.