概述
简化数组和Collection集合的遍历
格式
for(元素数据类型 变量 : 数组或者Collection集合) {
使用变量即可,该变量就是元素
}
底层
增强for循环底层依赖的是迭代器(Iterator)
要点
- (1) 增强for循环不能删除,只能遍历。原因: 增强for循环底层依赖的是迭代器(Iterator),而迭代器遍历的同时是不能够进行删除操作的(ListIterator除外)。因此,增强for循环不能删除,只能遍历。
public class ListTest {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("b");
list.add("c");
list.add("d");
for (String string : list) {
if("b".equals(string)) {
list.remove("b"); // 并发修改异常
}
}
}
}