产生的原因:
使用迭代器进行集合遍历时,用集合本身的方法remove(),add()进行删除元素或者新增元素时,会影响迭代器的遍历,所以为了避免这种情况发生,就产生了并发修改异常。
![在这里插入图片描述](https://img-blog.csdnimg.cn/f6771c34f4bd4a41805b0569361582f3.png#pic_center
解决方法:
使用迭代器遍历,使用迭代器进行删除或新增操作
●迭代器删除:
●迭代器增加:需要注意的是,迭代器没有直接的新增方法:
但Iterator下的子接口ListIterator有新增方法:
最后需要注意的是:
如果迭代器位置在倒数第二个元素,可以使用集合进行删除元素,不会发生并发修改异常!