电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

解決JAVA遍歷List集合,刪除數據時出現的問題

瀏覽:5日期:2022-08-29 09:52:44

一、問題描述

有時候,我們會遇到在遍歷List集合的過程中刪除數據的情況。

看著自己寫的代碼,感覺完全沒有問題,但就是達不到預期的效果,這是為什么呢?下面我們來分析下

String str1 = new String('1'); String str2 = new String('2'); String str3 = new String('3'); String str4 = new String('4'); String str5 = new String('5'); List list = new ArrayList(); list.add(str1); list.add(str2); list.add(str3); list.add(str4); list.add(str5); System.out.println('list.size()=' + list.size()); for (int i = 0; i < list.size(); i++) { list.remove(i);// i--; //System.out.println(i+' '+list.get(i)+' '); } System.out.println('after remove:list.size()=' + list.size());

本來預期結果應該是:

list.size()=5 after remove:list.size()=0

但實際上結果卻是:

list.size()=5 after remove:list.size()=2

原因如下: List每remove掉一個元素以后,后面的元素都會向前移動 ,此時如果執行i++,則剛剛移過來的元素沒有被讀取。

分析:

List中有5條數據,需要循環5次, 第一次數據為:1 2 3 4 5 執行完remove(0) 后,數據為 2 3 4 5 , i=1 第二次數據為:2 3 4 5 執行完remove(1) 后,數據為 2 4 5 , i=2 第三次數據為:2 4 5 執行完remove(2) 后,數據為 2 4 , i=3 此時如果加上上面注釋的代碼 System.out.println(i+' '+list.get(i)+' '); 循環第4、5次時就會出現異常

二、解決方法

解決方法1:每移過一次后,再把 i 移回來

for (int i = 0; i < list.size(); i++) { list.remove(i);i--; }

解決方法2:先刪除后面的元素

for (int i = list.size()-1; i >= 0; i--) { list.remove(i); }

解決方法3:使用iterator刪除

for(Iterator it = list.iterator();it.hasNext();){ it.remove(); }

以上就是解決JAVA遍歷List集合時,刪除數據出現的問題的詳細內容,更多關于JAVA遍歷List集合 刪除數據的資料請關注好吧啦網其它相關文章!

標簽: Java
主站蜘蛛池模板: 雷蒙磨,雷蒙磨粉机,雷蒙磨机 - 巩义市大峪沟高峰机械厂 | 净气型药品柜-试剂柜-无管道净气型通风柜-苏州毕恩思 | 酒万铺-酒水招商-酒水代理| 佛山商标注册_商标注册代理|专利注册申请_商标注册公司_鸿邦知识产权 | 桨叶搅拌机_螺旋挤压/方盒旋切造粒机厂家-无锡市鸿诚输送机械有限公司 | 假肢-假肢价格-假肢厂家-河南假肢-郑州市力康假肢矫形器有限公司 | 环境模拟实验室_液体-气体控温机_气体控温箱_无锡双润冷却科技有限公司 | 衡阳耐适防护科技有限公司——威仕盾焊接防护用品官网/焊工手套/焊接防护服/皮革防护手套 | 右手官网|右手工业设计|外观设计公司|工业设计公司|产品创新设计|医疗产品结构设计|EMC产品结构设计 | 螺杆式冷水机-低温冷水机厂家-冷冻机-风冷式-水冷式冷水机-上海祝松机械有限公司 | 陕西安闸机-伸缩门-车牌识别-广告道闸——捷申达门业科技 | 电动百叶窗,开窗器,电动遮阳百叶,电动开窗机生产厂家-徐州鑫友工控科技发展有限公司 | ASA膜,ASA共挤料,篷布色母料-青岛未来化学有限公司 | TwistDx恒温扩增-RAA等温-Jackson抗体-默瑞(上海)生物科技有限公司 | 水稻烘干机,小麦烘干机,大豆烘干机,玉米烘干机,粮食烘干机_巩义市锦华粮食烘干机械制造有限公司 水环真空泵厂家,2bv真空泵,2be真空泵-淄博真空设备厂 | 美国PARKER齿轮泵,美国PARKER柱塞泵,美国PARKER叶片泵,美国PARKER电磁阀,美国PARKER比例阀-上海维特锐实业发展有限公司二部 | 智慧消防-消防物联网系统云平台 智能化的检漏仪_气密性测试仪_流量测试仪_流阻阻力测试仪_呼吸管快速检漏仪_连接器防水测试仪_车载镜头测试仪_奥图自动化科技 | 超声波乳化机-超声波分散机|仪-超声波萃取仪-超声波均质机-精浩机械|首页 | 精密线材测试仪-电线电缆检测仪-苏州欣硕电子科技有限公司 | 陶氏道康宁消泡剂_瓦克消泡剂_蓝星_海明斯德谦_广百进口消泡剂 | 常州翔天实验仪器厂-恒温振荡器-台式恒温振荡器-微量血液离心机 恒温恒湿箱(药品/保健品/食品/半导体/细菌)-兰贝石(北京)科技有限公司 | 行星搅拌机,双行星搅拌机,动力混合机,无锡米克斯行星搅拌机生产厂家 | 密封圈_泛塞封_格莱圈-[东莞市国昊密封圈科技有限公司]专注密封圈定制生产厂家 | led太阳能路灯厂家价格_风光互补庭院灯_农村市政工程路灯-中山华可路灯品牌 | 宁波普瑞思邻苯二甲酸盐检测仪,ROHS2.0检测设备,ROHS2.0测试仪厂家 | 电子万能试验机_液压拉力试验机_冲击疲劳试验机_材料试验机厂家-济南众标仪器设备有限公司 | 吸音板,隔音板,吸音材料,吸音板价格,声学材料 - 佛山诺声吸音板厂家 | 郑州电线电缆厂家-防火|低压|低烟无卤电缆-河南明星电缆 | 冰晶石|碱性嫩黄闪蒸干燥机-有机垃圾烘干设备-草酸钙盘式干燥机-常州市宝康干燥 | 影视模板素材_原创专业影视实拍视频素材-8k像素素材网 | 高压负荷开关-苏州雷尔沃电器有限公司 | 热闷罐-高温罐-钢渣热闷罐-山东鑫泰鑫智能热闷罐厂家 | 算命免费_生辰八字_免费在线算命 - 卜算子算命网 | 通信天线厂家_室分八木天线_对数周期天线_天线加工厂_林创天线源头厂家 | 压装机-卧式轴承轮轴数控伺服压装机厂家[铭泽机械] | 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 - 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 | 交流伺服电机|直流伺服|伺服驱动器|伺服电机-深圳市华科星电气有限公司 | 山东PE给水管厂家,山东双壁波纹管,山东钢带增强波纹管,山东PE穿线管,山东PE农田灌溉管,山东MPP电力保护套管-山东德诺塑业有限公司 | 苹果售后维修点查询,苹果iPhone授权售后维修服务中心 – 修果网 拼装地板,悬浮地板厂家,悬浮式拼装运动地板-石家庄博超地板科技有限公司 | 不锈钢散热器,冷却翅片管散热器厂家-无锡市烨晟化工装备科技有限公司 | 全自动过滤器_反冲洗过滤器_自清洗过滤器_量子除垢环_量子环除垢_量子除垢 - 安士睿(北京)过滤设备有限公司 |