其实报错得原因就是抛出异常,违背了fail-fast 保护机制
此时我们换做迭代器来实现循环
List<String> list=new ArrayList<>();
list.add("1");
list.add("2");
Iterator<String> iterator=list.iterator();
while(iterator.hasNext()){
String item=iterator.next();
if(删除元素得条件){
iterator.remove();
}
}
异常写法
for(String item:list){
if(条件){
list.remove(item);
}
}