Exception in thread “main” java.util.ConcurrentModificationException
List list =new ArrayList();
list.add("张三");
list.add("李四");
Iterator it = list.iterator();
while (it.hasNext()){
Object o =it.next();
if(o.equals("李四")){
list.add("赵四");
}else{
System.out.println(o);
}
}
啪,运行很快啊,丢出一个异常
这个出错的原因是:
执行list.add(“赵四”)时,我们进去看源码。
点进去看
记住这个modCount,它会影响后面的判断。
我们点击
解决方案是不用迭代器遍历,使用普通For循环