public static List<Integer> removeOdd(List<Integer> list){
// ========================方法一:使用迭代器==========================
// Iterator<Integer> iter = list.iterator();
// while (iter.hasNext()) {
// if ((iter.next() % 2) != 0) {
// iter.remove();
// }
// }
// ========================方法二:使用for循环==========================
// for (int i=list.size()-1;i>=0;i--){
// if (list.get(i)%2!=0){
// list.remove(list.get(i));
// }
// }
for (int i=0;i<list.size();i++){
if (list.get(i)%2!=0){
list.remove(i);
}
}
return list;
}
list集合不能直接调用remove()方法删除元素,如下面这种使用foreach循环的方式进行删除会产生ConcurrentModificationException异常(并发修改异常)
for (Integer n:list) {
if (n% 2 != 0) {
list.remove(n);
}
}