博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java 循环遍历删除set list中的元素
阅读量:6031 次
发布时间:2019-06-20

本文共 1010 字,大约阅读时间需要 3 分钟。

删除List和Set中的某些元素

错误代码的写法:

Set
set = new HashSet
();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
set = new HashSet
();set.add("aaaaaa");set.add("bbbbbb");set.add("cccccc");set.add("dddddd");set.add("eeeeee");set.add("ffffff");set.add("gggggg");Iterator
it = set.iterator();while (it.hasNext()) { String str = it.next(); if ("dddddd".equals(str)) { it.remove(); }}for (String str : set) { System.out.println(str);}

输出:

aaaaaaffffffeeeeeebbbbbbccccccgggggg

 

转载地址:http://aebhx.baihongyu.com/

你可能感兴趣的文章
Target runtime Apache Tomcat is not defined.错误解决方法
查看>>
某机字长为32位,存储容量为64MB,若按字节编址.它的寻址范围是多少?
查看>>
VC++ 监视文件(夹)
查看>>
【转】keyCode对照表及JS监听组合按键
查看>>
EFCodeFirst系列
查看>>
eclipse开启和去掉代码上面的快速导航栏(Toggle Breadcrumb)的方法
查看>>
javascript中的命名规则和方法(转)
查看>>
常用正则表达式
查看>>
nullnullAndroid Interface Definition Language (AIDL) 接口描述语言
查看>>
使你更有思想的20本书
查看>>
java jni 编程
查看>>
Android项目 手机安全卫士(代码最全,注释最详细)之七 应用程序的更新安装...
查看>>
paip.输出内容替换在Apache 过滤器filter的设置
查看>>
hdu 1009:FatMouse' Trade(贪心)
查看>>
蓝桥杯 入门训练 Fibonacci数列(水题,斐波那契数列)
查看>>
resin4.0.23+nginx1.1集群
查看>>
PHP IDE 框架 服务器 相关
查看>>
命令别名alias设置
查看>>
Add Two Numbers
查看>>
CentOS7+Tomcat 生产系统部署
查看>>