集合遍历过程iterator, 添加删除元素报异常

list  set  遍历过程中添加或者删除元素,报异常。

使用iterator 也会报异常 ConcurrentModificationException

remove只能用迭代器的remove,而不能用集合的remove方法,iterator的remove会维护索引的一致性

iterator it = list.iterator();

while(it.hasnext(0){

obj =   it.next();

it.remove();

}

用java.util.concurrent中的类代替相应的集合类

时间: 2024-11-08 21:29:02

集合遍历过程iterator, 添加删除元素报异常的相关文章

Jquery 动态添加删除元素 用js添加的元素无法删除问题

用jquery方法的绑定侦听和销毁来解决动态div的增加删除: 正确代码: <script type="text/javascript" > $(document).ready(function(){  bindListener(); }) function addimg(){  $("#mdiv").append('<div ><input type="file" name="img[]" /&

JQuery 添加删除元素

<body><ul><ul/> <div><div></body> 1. 内部添加        加上去是父子关系 append  加到后面    prepend 加到前面 let li = $(“<li>我是内部添加</li>”) $("ul").append(li); 2. 外部添加    加上去是兄弟关系 let div = $(“<div>我是外部添加</div&g

java操作数组转list集合删除元素报错ConcurrentModificationException

public static void main(String[] args) { ArrayList<String> list = new ArrayList<String>(Arrays.asList("a", "b", "c", "d")); for (int i = 0; i < list.size(); i++) { list.remove(i); } System.out.println

添加删除元素(来自网络)

1.addClass:为指定的dom元素添加样式. 2.removeClass:删除指定dom元素的样式. 3.toggleClass:如果存在(不存在),就删除(添加)一个样式. 4.hasClass:判断样式是否存在. function hasClass(obj, cls) {     return obj.className.match(new RegExp('(\\s|^)' + cls + '(\\s|$)')); } function addClass(obj, cls) {    

js添加删除元素

<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-wid

Java 集合(List、Set)遍历、判断、删除元素时的小陷阱

开发中,常有场景:遍历集合,依次判断是否符合条件,如符合条件则删除当前元素. 不知不觉中,有些陷阱,不知你有没有犯. 1. 一.漏网之鱼-for循环递增下标方式遍历集合,并删除元素 如果你用for循环递增下标方式遍历集合,在遍历过程中删除元素,你可能会遗漏了某些元素.说那么说可能也说不清楚,看以下示例: import java.util.ArrayList; import java.util.List; public class ListTest_Unwork { public static v

java 集合遍历时删除元素

本文探讨集合在遍历时删除其中元素的一些注意事项,代码如下 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 import java.util.ArrayList; import java.util.Iterator; import java

List集合在遍历过程中的删除

List集合在遍历过程中的删除:[1,1,2,3,4,5] for循环正续会漏掉一个1 for(int i=0;i<list.size();i++){ if(list.get(i).equals(1)){ list.remove(i); } } for循环倒序可以删除所有1 for(int i=list.size()-1;i>=0;i--){ if(list.get(i).equals(1)){ list.remove(i); } } 迭代器和foreach遍历时删除都会报错:java.uti

多线程14-遍历集合时删除元素问题分析

1. 问题 创建一个User类: package cn.itcast.heima2; public class User implements Cloneable{ private String name; private int age; public User(String name, int age) { this.name = name; this.age = age; } public boolean equals(Object obj) { if(this == obj) { ret