增强for循环简化了数组和集合的遍历操作,适用于只读场景。其语法为“for (元素类型 变量名 : 数组名)”,可直接访问每个元素。示例包括遍历整型、字符串和浮点型数组。二维数组需嵌套两个增强for循环,外层遍历行,内层遍历元素。但该循环无法获取索引、修改基本类型数组元素、反向遍历或跳过元素,灵活性较低,适合无需索引的顺序访问。

在Java中,增强for循环(也称为foreach循环)提供了一种简洁的方式来遍历数组和集合,无需使用索引或迭代器。它特别适合只读操作或需要逐个访问元素的场景。
增强for循环的基本语法
增强for循环的语法结构如下:
for (元素类型 变量名 : 数组名) {// 执行操作
}
其中,变量名表示当前遍历到的数组元素,数组名是要遍历的目标数组。Java会自动按顺序取出每个元素并赋值给该变量。
遍历一维数组的实践示例
以下是一些常见数据类型数组的遍历示例:
立即学习“Java免费学习笔记(深入)”;
- 整型数组:
for (int num : numbers) {
System.out.println(num);
} String[] names = {"Alice", "Bob", "Charlie"};
for (String name : names) {
System.out.println("Hello, " + name);
}
- 浮点型数组:
for (double price : prices) {
System.out.printf("Price: $%.2f%n", price);
}
遍历二维数组的方法
对于二维数组,可以嵌套使用两个增强for循环:
int[][] matrix = {{1, 2}, {3, 4}, {5, 6}};for (int[] row : matrix) {
for (int element : row) {
System.out.print(element + " ");
}
System.out.println();
}
外层循环遍历每一行(每行是一个一维数组),内层循环遍历该行中的每一个元素。
使用时的注意事项
虽然增强for循环写法简洁,但也有一些限制:
- 无法获取当前元素的索引位置,如果需要索引,应使用普通for循环。
- 不能直接修改数组内容(对基本类型无效),因为循环变量是数组元素的副本。
- 不支持反向遍历或跳过特定元素,控制灵活性较低。
- 适用于数组和实现了Iterable接口的集合类(如ArrayList、HashSet等)。
基本上就这些。增强for循环让代码更清晰易读,在不需要索引或复杂控制逻辑时,是遍历数组的首选方式。










