使用removeIf方法从List中删除元素
在JDK1.8中,Collection
以及其子类新加入了removeIf
方法,作用是按照一定规则过滤集合中的元素。这里展示removeIf
的用法。
需求是过滤掉学生中分数为为18以下的,
一个学生实体类
@Data
public class Student {
public Student(String name, Integer score) {
this.name = name;
this.score = score;
}
//姓名
private String name;
//分数
private Integer score;
}
测试类
public class TestRemoveIf {
public static void main(String[] args) {
List<Student> studentList = new ArrayList<>();
studentList.add(new Student("小明", 12));
studentList.add(new Student("小红", 18));
studentList.add(new Student("小王", 20));
studentList.removeIf(e -> e.getScore() < 18);
System.out.println(studentList.toString());
}
}
从输出结果中看到小明被过滤掉了