国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

java中循環(huán)遍歷刪除List和Set集合中元素的方法(推薦)

2019-11-26 13:30:07
字體:
供稿:網(wǎng)友

今天在做項(xiàng)目時(shí),需要?jiǎng)h除List和Set中的某些元素,當(dāng)時(shí)使用邊遍歷,邊刪除的方法,卻報(bào)了以下異常:

ConcurrentModificationException

為了以后不忘記,使用爛筆頭把它記錄如下:

錯(cuò)誤代碼的寫法,也就是報(bào)出上面異常的寫法:

Set<CheckWork> set = this.getUserDao().getAll(qf).get(0).getActionCheckWorks();for(CheckWork checkWork : set){  if(checkWork.getState()==1){    set.remove(checkWork);  }}

注意:使用上面的寫法就會(huì)報(bào)上面的ConcurrenModificationException異常,原因是,集合不可以一邊遍歷一邊刪除。

正確的寫法如下:

1. 遍歷刪除List

List<CheckWork> list = this.getUserDao().getAll();Iterator<CheckWork> chk_it = list.iterator();while(chk_it.hasNext()){  CheckWork checkWork = chk_it.next();  if(checkWork.getPlanState()==1){    chk_it.remove();  }}

2. 遍歷刪除Set

Set<CheckWork> set = this.getUserDao().getAll().get(0).getActionCheckWorks();		Iterator<CheckWork> it = set.iterator();		while(it.hasNext()){			CheckWork checkWork = it.next();			if(checkWork.getState()==1){				it.remove();			}		}

以上這篇java中循環(huán)遍歷刪除List和Set集合中元素的方法(推薦)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林網(wǎng)。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 黄大仙区| 渑池县| 临夏县| 三穗县| 东阿县| 朝阳市| 竹溪县| 茶陵县| 开原市| 宣威市| 高密市| 阳泉市| 陇西县| 文昌市| 长岭县| 梁平县| 大余县| 嘉峪关市| 遵义市| 休宁县| 电白县| 秦皇岛市| 大石桥市| 青铜峡市| 巴彦淖尔市| 南陵县| 建始县| 武功县| 平阳县| 固原市| 兴仁县| 霞浦县| 汝城县| 湘潭县| 雅江县| 抚顺市| 大余县| 博乐市| 赤城县| 治多县| 图们市|