首页 > 编程语言 > 详细

Java处理java.util.ConcurrentModificationException异常

时间:2016-04-01 13:07:48      阅读:159      评论:0      收藏:0      [点我收藏+]

代码:

public static void reduce(HashMap<String, Integer> hashMap, final Integer count) {
Iterator<String> iter = hashMap.keySet().iterator();
String key;

while(iter.hasNext()) {
key = iter.next();

if (!hashMap.get(key).equals(count)) {
hashMap.remove(key);
}
}
return hashMap;
}

 

异常:

Exception in thread "main" java.util.ConcurrentModificationException

 

原因:

  在迭代的过程中进行了add(),remove()操作。其实仔细想想也能理解,如果在迭代中使用remove(),那第二轮循环时的next()究竟指向谁?!

 

Java处理java.util.ConcurrentModificationException异常

原文:http://www.cnblogs.com/yrqiang/p/5344531.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!