ArrayList删除元素
因为foreach删除会导致快速失败问题,for i 顺序遍历会导致重复元素没删除,所以正确解法如下:
第一种遍历,倒序遍历删除
第二种,迭代器删除
1 public void test2(){ 2 List<Integer> li = new ArrayList<>(); 3 li.add(1); 4 li.add(1); 5 li.add(3); 6 for(int i = li.size() - 1; i >= 0; i--){ 7 if(li.get(i).equals(1)){ 8 li.remove(li.get(i)); 9 } 10 } 11 System.out.println(li); 12 13 li.add(2); 14 li.add(3); 15 li.add(4); 16 Iterator it = li.iterator(); 17 while(it.hasNext()){ 18 if(it.next().equals(2)){ 19 it.remove(); 20 } 21 } 22 System.out.println(li); 23 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~