使用foreach的禁忌
1 List<String> list = new ArrayList<>(); 2 Iterator<String> iterator = list.iterator(); 3 //反列 4 for (String s:list) { 5 if(true) { 6 list.remove(s); 7 } 8 } 9 //正列 10 while (iterator.hasNext()){ 11 if (true) { 12 iterator.remove(); 13 } 14 }
使用第一个方式删除会产生数据紊乱,最终的结果不是自己想的到的

浙公网安备 33010602011771号