集合之增强for循环
1.作用
使用增强for循环可以简化数组以及集合的遍历方式:
for(元素数据类型 变量 : 数组或者Collection集合) {
使用变量即可,该变量就是元素
}
2.在集合中三种迭代方式的删除数据
- 增强for循环不能删除数据
- 利用For循环进行自减改变,从而可以删除
- 利用迭代器,使用remove方法
public class Testone {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("b");
list.add("c");
list.add("d");
//普通for循环删除,索引做自减运算
for(int i = 0; i < list.size(); i++) {
if("b".equals(list.get(i))) {
list.remove(i);
i--;
}
}
//迭代器删除
for(ListIterator<String> iter = list.listIterator(); iter.hasNext();){
if("b".equals(iter.next())) {
iter.remove();
}
}
//增强for循环不能删除,ConcurrentModificationException
for (String string : list) {
if("b".equals(string)) {
list.remove("b");
}
}
System.out.println(list);
}
}