在Java8之前,在遍历列表的同时,去掉列表中包含某个特定字段的元素的做法,会报并发错误;
但是在Java8中完美的解决了这个问题:
public class Person { private Integer age; private String name; public void setAge(Integer age){ this.age = age; } public Integer getAge(){ return this.age; } public void setName() { this.name = name; } public String getName() { return this.name; } } List<Person> lists = new ArrayList<>(); lists.add(new Person(18, "zs")); lists.add(new Person(19, "ls")); lists.add(new Person(20, "ww")); //使用removeIf方法,-> 右边是判断条件,如果符合这个条件就删除。这里会删除name为ls的元素 lists.removeIf((e) -> e.getName() == "ls");