集合的并发修改异常

出现:

当我们用迭代器遍历集合的同时想要改变集合元素时,控制台会抛出ConcurrentModificationException 并发修改异常

原因:

我们用的是迭代器,进行遍历,在遍历之前,迭代器已经知道了,你集合中的所有元素
然后你在迭代的过程当中,突然间想要添加一个元素,迭代器肯定加不进去的

解决:

1.用迭代器中的添加方法,不用集合的添加方法

while (iterator.hasNext()) {
			String ele = iterator.next();
			if("world".equals(ele)) {
				//arrayList.add("javaee"); // ConcurrentModificationException 并发修改异常
				iterator.add("javaee");//用迭代器的添加方法
			}
			
		}

2.用for循环遍历

for(int i=0;i<arrayList.size();i++) {
			String ele = arrayList.get(i);
			if("world".equals(ele)) {
			arrayList.add("javaee"); 
				
			}
		}

猜你喜欢

转载自blog.csdn.net/qq_38454165/article/details/81360705