Java_遍历集合过程中删除集合元素报错的解决方案
来源:互联网 发布:黑色星期五 知乎 编辑:程序博客网 时间:2024/06/12 00:18
问题描述:使用增强for循环遍历集合,如果遍历过程中去除第一个或者最后一个元素会报错,去除中间的元素不会报错:Exception in thread “main” java.util.ConcurrentModificationException
不知道这个是怎么回事,好像和指针有关吧(暂时不了解),为了避免此类问题的出现,可以使用迭代器或者
普通for循环来解决。
1.使用迭代器
代码举例:
public static void removeElement(List<Integer> list) { Iterator<Integer> it = list.iterator(); while(it.hasNext()) { Integer id = it.next(); if (id == 2) { it.remove(); } }}
2.使用普通for循环,如果删除需要i–
public static void removeElement(List list) {
int len = list.size();for(int i = 0; i < len; i++) { if(list.get(i) == 2) { list.remove(i); i--; }}
}
0 0
- Java_遍历集合过程中删除集合元素报错的解决方案
- 集合遍历过程中删除集合元素问题
- 循环遍历中删除集合的元素
- 如何实现在遍历集合的过程中删除其中的元素
- java_集合的遍历总结
- 集合中元素的删除
- Java使用迭代器遍历集合,遍历过程中可删除元素
- 在遍历集合的时候删除集合中的元素
- 集合中遍历元素并删除个别元素
- 集合的遍历删除
- 集合元素的删除
- Iterator遍历器删除集合中元素抛异常
- 删除集合中重复的元素
- 在循环中删除集合的元素
- java中循环遍历删除List和Set集合中元素的方法
- Java_集合操作_使遍历Map时取出的元素顺序与放入时一致
- java集合遍历过程中报ConcurrentModificationException异常
- JAVA遍历List集合并删除其中的元素
- 关于TF转换信息(Transforms)的理解
- 深入理解JavaScript系列(12):变量对象(Variable Object)
- 二维数组——————学生成绩管理
- Github使用方法--小白专用
- WannaCry怎么解决?Win7/Win8/Win10解决图文步骤
- Java_遍历集合过程中删除集合元素报错的解决方案
- Zookeeper应用场景
- java基础-StringBuffer(常见功能—添加、删除和修改)
- 【再谈软件生存周期】
- IE8的一些问题
- 1083. List Grades (25)
- .NET的开创背景和相关知识初探
- 深入理解JavaScript系列(13):This? Yes,this!
- 有关NCL遇见缺少 libgfortran.so.3 文件的解决方案