增强型for循环用于简化数组和集合的遍历,语法为“for (元素类型 变量名 : 数组或集合)”,可提升代码可读性和安全性,但无法修改集合结构、不支持反向遍历且不能直接获取索引。

在Java中,增强型for循环(也称为foreach循环)是一种简洁、易读的遍历数组或集合的方式。它从Java 5开始引入,主要用于替代传统的for循环中使用索引进行迭代的操作,让代码更清晰、安全。
增强型for循环的基本语法
增强型for循环的语法格式如下:
for (元素类型 变量名 : 数组或集合) {// 执行操作
}
其中,变量名表示当前遍历到的元素,冒号后面的表达式是要遍历的数组或实现了Iterable接口的集合(如List、Set等)。
遍历数组的示例
假设有一个整型数组,想打印每个元素:
立即学习“Java免费学习笔记(深入)”;
int[] numbers = {1, 2, 3, 4, 5};for (int num : numbers) {
System.out.println(num);
}
这段代码会依次输出数组中的每个值。相比传统for循环,不需要手动管理索引,减少了出错的可能性。
遍历集合的示例
增强型for循环同样适用于集合类。例如,遍历一个ArrayList:
import java.util.ArrayList;import java.util.List;
List
names.add("Alice");
names.add("Bob");
names.add("Charlie");
for (String name : names) {
System.out.println(name);
}
输出结果为每个名字各占一行。这种写法避免了调用get(i)和size()方法,也防止了越界异常。
使用时的注意事项
虽然增强型for循环使用方便,但也有其局限性:
- 无法在遍历时修改集合结构(如添加或删除元素),否则会抛出ConcurrentModificationException
- 不支持反向遍历,只能从头到尾顺序访问
- 无法直接获取当前元素的索引位置,若需索引信息,仍建议使用普通for循环
- 仅适用于数组或实现了Iterable接口的对象
如果需要在遍历过程中根据条件移除元素,应使用Iterator或ListIterator。
基本上就这些。增强型for循环适合大多数只读遍历场景,能显著提升代码可读性和安全性。合理使用,能让Java程序更简洁高效。










