Java 循环遍历删除set list中的元素
2014-09-29 13:48
609 查看
删除List和Set中的某些元素
错误代码的写法:
运行报错:
使用如上方式遍历的时候,不能增加、删除set中的数据
正确代码的写法
输出:
错误代码的写法:
Set<String> set = new HashSet<String>(); set.add("aaaaaa"); set.add("bbbbbb"); set.add("cccccc"); set.add("dddddd"); set.add("eeeeee"); set.add("ffffff"); set.add("gggggg"); for (String str : set) { if ("dddddd".equals(str)) { set.remove(str); } }
运行报错:
Exception in thread "main" java.util.ConcurrentModificationException at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793) at java.util.HashMap$KeyIterator.next(HashMap.java:828) at test2.Test1.main(Test1.java:16)
使用如上方式遍历的时候,不能增加、删除set中的数据
正确代码的写法
Set<String> set = new HashSet<String>(); set.add("aaaaaa"); set.add("bbbbbb"); set.add("cccccc"); set.add("dddddd"); set.add("eeeeee"); set.add("ffffff"); set.add("gggggg"); Iterator<String> it = set.iterator(); while (it.hasNext()) { String str = it.next(); if ("dddddd".equals(str)) { it.remove(); } } for (String str : set) { System.out.println(str); }
输出:
aaaaaa ffffff eeeeee bbbbbb cccccc gggggg
相关文章推荐
- Java 循环遍历删除set list中的元素
- java中循环遍历删除List和Set集合中元素的方法(推荐)
- java中循环遍历删除List和Set集合中元素的方法
- java中循环遍历删除List和Set集合中元素的方法
- Java 集合(List、Set)遍历、判断、删除元素时的小陷阱
- 编程技巧系列(2)Java 集合(List,Set,Map)遍历时有条件删除特定元素
- Java循环删除List Set中的元素
- Java遍历时删除List、Set、Map中的元素(源码分析)
- 【Java】集合(List、Set、Map)遍历、删除、比较元素时的小陷阱
- Java遍历时删除List、Set、Map中的元素(源码分析)
- Java - List遍历、判断、删除元素时的陷阱
- Java List遍历中删除元素
- java 中,循环删除list中的多个元素实现
- Java中如何循环删除一个集合(如List)中的多个元素
- Java中如何循环删除一个集合(如List)中的多个元素
- list,set等集合遍历时,不能remove集合中的元素。需要new一个Object或者list,set,里面add需要删除的元素,等集合遍历完了进行remove(Object)或者removeAll(list/set)操作
- java ArrayList循环遍历并删除元素的常见陷阱
- Java中遍历删除List多个元素
- Java中如何循环删除一个集合(如List)中的多个元素
- Java遍历List集合并删除其中的元素