for-earch迭代时的错误————java.util.ConcurrentModificationException
- 在使用list集合使用for——earch和iterator进行循环删除list集合中的内容是会报错。
package com.collection;import java.util.ArrayList; import java.util.List;/*** 探究list中迭代的错误* @author 26920**/ public class forearch {public static void main(String[] args) {List<String> list=new ArrayList<String>();list.add("22");list.add("22");list.add("22");list.add("22");for (String string : list) {list.remove(string);}} }
运行起来就报错了
Exception in thread "main" java.util.ConcurrentModificationExceptionat java.util.ArrayList$Itr.checkForComodification(ArrayList.java:909)at java.util.ArrayList$Itr.next(ArrayList.java:859)at com.collection.forearch.main(forearch.java:18)
解决方法
package com.collection;import java.util.ArrayList; import java.util.List;/*** 探究list中迭代的错误* @author 26920**/ public class forearch {public static void main(String[] args) {List<String> list=new ArrayList<String>();list.add("22");list.add("22");list.add("22");list.add("22");for (int i=0;i<list.size();i++) {list.remove(i);}System.out.println(list.size());} }
把for-earch循环改成简单的for循环,输出结果为2.应为list.size()的大小在变化
产生这样的原因跟Iterator中的modCount变量有关!
for-earch迭代时的错误————java.util.ConcurrentModificationException相关推荐
- java.util.ConcurrentModificationException异常
2019独角兽企业重金招聘Python工程师标准>>> <p> 今天遇到了一个小bug,在对ArrayList操作时出现了java.util.ConcurrentM ...
- 使用Iterator 或for-each注意:java.util.ConcurrentModificationException
使用Iterator 或for-each注意:java.util.ConcurrentModificationException Posted on 2010-03-02 12:22 Fingki.l ...
- (转)Exception in thread main java.util.ConcurrentModificationException异常怎么解决?
[转载原因:同样遇到set的foreach遍历中调用remove方法,导致这个错误.] [转载原文:https://blog.csdn.net/jdk_wangtaida/article/detail ...
- 出现 java.util.ConcurrentModificationException 时的解决办法
for (int i=0; i<list.size(); i++) { // 只有在这种方式遍历集合时,同时对集合增加.删除才不会影响. // list.remove(list.get(i)); ...
- 错误 java.util.MissingResourceException:
错误 java.util.MissingResourceException: Can't find bundle for base name gfd, locale zh_CN是怎么回事? 描述: 在 ...
- 我的Android进阶之旅------解决错误: java.util.regex.PatternSyntaxException: Incorrect Unicode property...
1.错误描述 今天使用正则表达式验证密码的时候,报了错误 java.util.regex.PatternSyntaxException: Incorrect Unicode property near ...
- java.util.ConcurrentModificationException(并发修改错...
为什么80%的码农都做不了架构师?>>> public class ConcurrentModificationExceptionextends RuntimeExceptio ...
- java.util.ConcurrentModificationException: null异常(已解决,原因出自于Java集合的快速失败机制)
问题来源 今天我在写项目时,对集合中的元素做了以下操作 报错信息如图 问题来源: 在Java中对集合进行遍历时,一旦对集合进行增删操作,在遍历时会引起java.util.ConcurrentModif ...
- java.util.ConcurrentModificationException 解决办法
在使用iterator.hasNext()操作迭代器的时候,如果此时迭代的对象发生改变,比如插入了新数据,或者有数据被删除. 则使用会报以下异常: Java.util.ConcurrentModifi ...
- List中subList方法抛出异常java.util.ConcurrentModificationException原理分析
1.首先从测试代码开始: public class Test {public static void main(String[] args) {List<Integer> list = n ...
最新文章
- java oracle 建表语句_在oracle数据库中创建表语句如何写?
- monty python life of brian-50大最搞笑喜剧片,无厘头成必杀技!
- SAP Cloud Application Studio避免出现性能问题的一些最佳实践
- XP操作系统最优视觉效果
- Spring概念理解
- java多线程编程基础
- Regal灰度发布智能分组引擎
- pip install mysqlclient 报错:error: Microsoft Visual C++ 14.0 is required.
- linux和windows下的“回车符”和“换行符”
- 【java】Java实现异步调用方法(jdk1.8)
- IOS第五天(2:用户登录,回车的监听(代理模式UITextFieldDelegate)) 和关闭键盘
- good nice fine well区别
- java并发编程(7)-- 线程 自旋锁
- 激光导航——让扫地机器人行走自如的技术
- 【其他工具】亲戚关系计算器
- php在线安装ipa,网页安装ipa
- 两个tplink路由器有线桥接_【设置教程】TP-Link路由器有线桥接
- iOS集成支付宝支付 Alipay
- Excel 删除一行的快捷键
- Android 蓝牙连接,蓝牙配对,自动连接蓝牙