Java ArrayList.removeIf() 方法及代码示例
删除当前数组列表中符合给定断言的所有元素
定义
public boolean removeIf(Predicate<? super E> filter)
参数
参数类型 | 参数名称 | 参数描述 |
---|---|---|
Predicate<? super E> | filter | 如果元素应该被删除则返回 true 的断言 |
类型变量 | E | 数组列表的元素类型 |
返回值
如果有任意元素被删除则返回 true
, 否则返回 false
.
抛出的异常
NullPointerException
如果断言为 null
说明
本方法方法由 Collection<E>
接口的 removeIf()
方法指派
注意事项
在迭代期间或由断言引发的错误或运行时异常被传递给调用者
示例
使用条件删除数组列表元素的示例
package com.yi21.arraylist; import java.util.ArrayList; public class Yi21ArraysListRemoveIf { public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); list.add("Hello"); list.add("World"); list.add("World"); list.add("21yi"); System.out.println("数组列表中的元素个数 " + list.size()); System.out.println("是否有元素被删除? " + list.removeIf(t -> {return t.startsWith("W");})); System.out.println("数组列表中的元素个数 " + list.size()); System.out.println("是否有元素被删除? " + list.removeIf(t -> {return t.startsWith("W");})); System.out.println("数组列表中的元素个数 " + list.size()); } }
执行结果为 :
数组列表中的元素个数 4 是否有元素被删除? true 数组列表中的元素个数 2 是否有元素被删除? false 数组列表中的元素个数 2