2020-11-19 java.util.ConcurrentModificationException
1.为什么会抛出异常?
迭代器实例生成后expectedModCount已确定,删减元素造成modCount变化,此后调用next方法内检查expectedModCount与modCount不一致,此时抛出异常
2.如何避免异常?
迭代器内使用迭代器的删除元素方法,不在迭代器循环内增加元素
支持并发的容器,在不同线程内构造Iterator对象,也会抛出异常
3.为什么迭代器的删除方法未抛出异常?
迭代器删除元素后expectedModCount同步了modCount的值