| 这很简单,看看迭代器的源码就可以发现,每当执行到while(it.haxNext()){,java虚拟机会自动执行ArrayList类中的checkForComodification方法。[code=java]private void checkForComodification() { if (this.modCount != l.modCount)
 throw new ConcurrentModificationException();
 }[/code]而这个方法用来比较modCount和expectedModCount是否相等,但是你在循环遍历的时候添加了又添加了一个元素,改变集合的大小,导致modCount和expectedModCount不相等,自然会抛出ConcurrentModificationException(throw new ConcurrentModificationException();)
 |