切记:list集合遍历去除一个元素最好用Iterator迭代期!!!!
切记:list集合遍历去除一个元素最好用Iterator迭代期!!!!
切记:list集合遍历去除一个元素最好用Iterator迭代期!!!!
for循环、while循环去除集合中一个元素,会抛异常,原因:假如集合中6个元素,remove后,还是会循环遍历,会抛异常。
List<Integer> a = new ArrayList<>();
a.add(1);
a.add(2);
a.add(2);
a.add(3);
a.add(4);
a.add(5);
a.add(6);
a.add(7);
System.out.println(a.size()+" !@#$%^&*(");
for (Integer aa : a) {
if (aa == 2) {
a.remove(aa);
System.out.println("----------");
}
System.out.println(a.size()+" ^^^ "+aa);
}
结果:
8 !@#$