Java 中的 ArrayList removeIf() 方法

Java 中的 ArrayList removeIf() 方法

ArrayListremoveIf() 方法用于删除满足传递给该方法的谓词过滤器的所有元素的此 ArrayList 中的元素。

迭代期间抛出的错误或运行时异常或谓词传递给调用方。如果我们能够删除某个元素,则此方法返回True。

Java 8具有一种重要的内置函数接口,即Predicate。 Predicate或 condition checking function,检查给定输入是否满足给定条件,并为相同的Boolean 结果返回一个布尔值,表示是否满足该条件。

Java 8 Predicate with Examples.

语法:

public boolean removeIf(Predicate filter)

参数: 此方法接受一个参数, filter 表示返回要删除的元素的谓词。

返回值: 如果谓词返回 true,并且我们能够删除元素,则此方法返回 True。

异常: 如果指定的过滤器为空,则此方法将引发NullPointerException。

下面的程序演示了ArrayList的removeIf()方法:

程序1: 在ArrayList上演示removeIf()方法,其中包含一组数字,只有可被3整除的数字将被删除。

// Java程序演示removeIf()
// ArrayList方法
  
import java.util.*;
public class GFG {
  
    public static void main(String[] args)
    {
  
        // 创建一个ArrayList
        // 含有一个数字列表
        ArrayList<Integer> Numbers = new ArrayList<Integer>();
  
        // 向列表添加数字
        Numbers.add(23);
        Numbers.add(32);
        Numbers.add(45);
        Numbers.add(63);
  
        // 应用removeIf()方法
        // 我们要删除可被3整除的数字
        Numbers.removeIf(n-> (n%3 == 0));
  
        // 打印数字列表
        for (int i : Numbers) {
            System.out.println(i);
        }
    }
}
23
32

程序2: 在 ArrayList 上演示 removeIf() 方法,其中包含一组学生名称,名称以”S”开头的将被删除。

// Java程序演示removeIf()
// ArrayList方法
  
import java.util.*;
public class GFG {
  
    public static void main(String[] args)
    {
        // 创建一个ArrayList
        // 里面包含一组学生名称,这实际上是字符串值
        ArrayList<String> students = new ArrayList<String>();
  
        // 添加学生名称
        students.add("Ram");
        students.add("Mohan");
        students.add("Sohan");
        students.add("Rabi");
        students.add("Shabbir");
  
        // 应用removeIf()方法
        // 我们要删除以S开头的名称
        students.removeIf(n-> (n.charAt(0) == 'S'));
  
        System.out.println("上述学生的名称均不以S开头。");
        // 打印学生名称列表
        for (String str : students) {
            System.out.println(str);
        }
    }
}
上述学生的名称均不以S开头。
Ram
Mohan
Rabi

参考: https://docs.oracle.com/javase/10/docs/api/java/util/ArrayList.html#removeIf(java.util.function.Predicate)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程