removeIf()

本页内容

Java ArrayList removeIf() 方法

Java ArrayList

removeIf() 方法用于删除所有满足特定条件的数组元素。

removeIf() 方法的语法为:

arraylist.removeIf(Predicate<E> filter)

注:arraylist 是 ArrayList 类的一个对象。

参数说明:

  • filter - 过滤器,判断元素是否要删除

返回值

如果元素被删除则返回 true。

==

以下实例演示了 removeIf() 方法的使用:


示例

import java.util.*;

class Main {

    public static void main(String[] args){

        // 创建一个动态数组

        ArrayList<String> sites = new ArrayList<>();

       

        sites.add("Google");

        sites.add("xiaoBai");

        sites.add("Taobao");

        System.out.println("ArrayList : " + sites);

        // 删除名称中带有 Tao 的元素

        sites.removeIf(e -> e.contains("Tao"));;

        System.out.println("删除后的 ArrayList: " + sites);

    }

}

执行以上程序输出结果为:

ArrayList : [Google, xiaoBai, Taobao]
删除后的 ArrayList: [Google, xiaoBai]

在以上实例中,我们使用了 Java String contains() 方法来检查元素中是否包含 "Tao"。

e -> e.contains("land") 如果元素中包含 "land",则返回 true

removeIf() 如果 e -> e.contains("land") 返回 true 则删除该元素。

删除偶数的元素:


示例

import java.util.ArrayList;

class Main {

    public static void main(String[] args) {

        // 创建一个数组

        ArrayList<Integer> numbers = new ArrayList<>();

        // 往数组中插入元素

        numbers.add(1);

        numbers.add(2);

        numbers.add(3);

        numbers.add(4);

        numbers.add(5);

        numbers.add(6);

        System.out.println("Numbers: " + numbers);

        // 删除所有偶数元素

        numbers.removeIf(e -> (e % 2) == 0);;

        System.out.println("Odd Numbers: " + numbers);

    }

}

执行以上程序输出结果为:

Numbers: [1, 2, 3, 4, 5, 6]
Odd Numbers: [1, 3, 5]

在以上实例中,我们创建了一个名为 numbers 的动态数组。

注意表达式:

numbers.removeIf(e -> (e % 2) == 0);

e -> (e % 2) == 0) 是匿名函数 lambda 的表达式。它能检查元素是否能被 2 整除。

要了解匿名函数更多信息,请访问 Java Lambda 表达式

removeIf() 方法如果 e -> (e % 2) == 0 返回 true 则删除元素。

Java ArrayList

此页面最后编辑于2022年8月17日 (星期三) 17:03。