使用迭代器删除集合的元素抛出异常
2017-09-05 18:54
302 查看
迭代器进行迭代使用的是集合的一个拷贝,他是在另外的线程中进行的,每次进行迭代的时候都会与主线程的集合进行对比,检查是否一致。如果不一致会在调用next()方法的时候抛出异常。如果使用的是集合本身的remove方法进行删除元素的话就会造成两个线程的集合不一致的情况,以致抛出异常。如果要移除集合中的元素需使用迭代器的移除元素的方法。
java中的foreach的实现使用的就是迭代器。所以在使用foreach进行遍历集合的时候删除元素就会抛出异常。
java中的foreach的实现使用的就是迭代器。所以在使用foreach进行遍历集合的时候删除元素就会抛出异常。
相关文章推荐
- 使用迭代器遍历集合时,当集合中的数据发生变化是会抛出java.util.ConcurrentModificationException异常
- Java使用迭代器遍历集合,遍历过程中可删除元素
- java 集合元素的删除要使用迭代器(Iterator) 笔记
- 关于集合中在迭代器中用集合的对象删除元素的并发异常问题
- 使用迭代器时为什么不能用集合删除元素的方法
- 如何使用迭代器iterator循环删除容器中的元素?
- 如何使用迭代器iterator循环删除容器中的元素?
- java遍历map并删除元素时,使用不当会抛弃异常
- PageCollectionView[Bug],使用Filter的时候,删除集合中的元素,会导致ArgumentOutOfRangeException
- 每天进步一点点_遍历集合删除元素的异常
- java中关于集合set类的使用,删除集合中的元素
- 在Java中使用迭代器访问集合元素
- Java集合中删除元素使用Iterator
- 小记—— vector 删除指定下标中的元素(不使用迭代器(iterator ))
- [疯狂Java]集合:Collection的迭代器Iterator、使用Predicate筛选集合中的元素
- 如何使用迭代器iterator循环删除容器中的元素?
- 使用for循环删除集合元素需要注意的问题
- 陷阱01:使用for删除集合中的元素时的陷阱:
- 安卓谷歌电子市场学习笔记系列——怎么移除集合中的元素(迭代器的使用)
- 如何边遍历集合边删除元素--使用Iterator中的remove()方法