List<String> list = new ArrayList<String>();//这是我们的集合list.add(..);//放值for(String str : list) {if(list.constant("232")) {list.remove(str);//移除对象}}这时候就会报java.util.ConcurrentModificationException的异常原因是,我们对集合进行add,remove时List是动态的,当我们对集合迭代时,我们remove当前元素之后,当程序迭代下一个元素时就会找不到下一个元素的指针,所以会报错。不管是list set Map 迭代时都会报这样的错误解决方法:List delList = new ArrayList();//用来装需要删除的元素List<String> list = new ArrayList<String>();//Z这是我们的集合list.add(..);for(String str : list) {if(list.constant("232")) {list.remove(str);//移除对象}}list.removeAll(delList);//遍历完成后执行删除
java.util.ConcurrentModificationException 集合remove异常
最新推荐文章于 2024-12-22 00:18:27 发布