我是靠谱客的博主 细腻店员,最近开发中收集的这篇文章主要介绍java.util.ConcurrentModificationException: null异常问题:原因:解决方法:,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
问题:
在Java中对集合使用增强for循环时,一旦对集合进行增删操作,在遍历时会引起java.util.ConcurrentModificationException: null异常。
原因:
在官方文档中ConcurrentModificationException的介绍如下:
public class ConcurrentModificationException extends RuntimeException
某个线程在 Collection 上进行遍历时,通常不允许其他线程修改该 Collection,这会导致遍历的结果是不确定的。当方法检测到集合发生并发修改时,不允许这种修改,抛出此异常。
在执行增删操作以后,集合的expectedModCount和modCount的值不一致,这两个变量的作用都是记录修改次数的,二者不相等,就会抛错。
-
expectedModCount:表示对ArrayList修改次数的期望值,它的初始值为modCount。
-
modCount是AbstractList类中的一个成员变量。
解决方法:
- 方法一:使用索引(普通for循环)遍历。
- 方法二:使用增强for循环遍历,增删操作使用迭代器实现。
最后
以上就是细腻店员为你收集整理的java.util.ConcurrentModificationException: null异常问题:原因:解决方法:的全部内容,希望文章能够帮你解决java.util.ConcurrentModificationException: null异常问题:原因:解决方法:所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复