removeIf()
با «حذف شرطی (Conditional Remove)» می توانی از ArrayList فقط آیتم های مطابق شرط را پاک کنی. «پرِدیکیت (Predicate)» یعنی تابعی که یک چیز را می سنجد و true/false برمی گرداند. مثل فیلتر در اینستاگرام اما برای داده ها!
تعریف و کاربرد
متد removeIf() همه عناصر لیست را که شرط مشخصی را پاس می کنند، حذف می کند. شرط با لامبدا (Lambda) یا یک Predicate تعیین می شود.
سینتکس
public boolean removeIf(Predicate condition)
مثال: حذف اعداد زوج
در این مثال، هر عددی که زوج باشد حذف می شود. مثل پاک کردن برگه های زوج از دفتر.
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList numbers = new ArrayList();
numbers.add(5);
numbers.add(9);
numbers.add(8);
numbers.add(6);
numbers.add(1);
numbers.removeIf(n -> n % 2 == 0);
System.out.println(numbers);
}
}
گام های عملی سریع
- لیستت را بساز و پر کن.
- یک شرط ساده با لامبدا بنویس.
removeIfرا اجرا کن و خروجی را چک کن.
نکته: اگر هیچ آیتمی حذف نشود، نتیجه false است. اگر شرط خطرناک است، اول روی یک کپی تست کن.
مطالعه بیشتر
جمع بندی سریع
removeIf()حذف را شرطی می کند.- شرط با
Predicateیا لامبدا است. - اگر چیزی حذف نشود،
falseمی دهد. - ابتدا شرط را ساده و امن تست کن.