精通 Java 增强 for 循环:语法、示例与最佳实践
精通 Java 增强 for 循环
学习 Java 增强 for 循环如何简化数组和集合遍历,含清晰示例和与经典 for 循环的对比。
增强 for 循环 —— 常称 for-each 循环 —— 是现代 Java (JDK 1.5 引入) 的基石。它让开发者以最少样板代码遍历数组、List 和其他集合,提升可读性并降低 off-by-one 错误风险。
增强 for 循环语法
语法简洁明了:
for (DataType element : arrayOrCollection) {
// 处理 element
}
- arrayOrCollection – 被遍历的数组或集合。
- element – 依次取得每个值的局部变量。
- DataType – 元素类型。
示例 1: 打印数组元素
// 打印数组元素
class Main {
public static void main(String[] args) {
int[] numbers = {3, 9, 5, -5};
for (int number : numbers) {
System.out.println(number);
}
}
}
输出
3 9 5 -5
每次迭代将当前数组值赋给 number 并打印。
- 迭代 1:
number = 3 - 迭代 2:
number = 9 - 迭代 3:
number = 5 - 迭代 4:
number = -5
示例 2: 数组元素求和
// 计算数组所有元素之和
class Main {
public static void main(String[] args) {
int[] numbers = {3, 4, 5, -5, 0, 12};
int sum = 0;
for (int number : numbers) {
sum += number;
}
System.out.println("Sum = " + sum);
}
}
输出:
Sum = 19
| 迭代 | 变量 |
|---|---|
| 1 | number = 3 sum = 0 + 3 = 3 |
| 2 | number = 4 sum = 3 + 4 = 7 |
| 3 | number = 5 sum = 7 + 5 = 12 |
| 4 | number = -5 sum = 12 + (-5) = 7 |
| 5 | number = 0 sum = 7 + 0 = 7 |
| 6 | number = 12 sum = 7 + 12 = 19 |
每次循环将当前元素加到 sum,最终得到总和。
for 循环 vs 增强 for 循环
两者结果相同,但增强 for 循环语法更清晰,消除手动索引管理。
1. 经典 for 循环
class Main {
public static void main(String[] args) {
char[] vowels = {'a', 'e', 'i', 'o', 'u'};
for (int i = 0; i < vowels.length; ++i) {
System.out.println(vowels[i]);
}
}
}
输出:
a e i o u
2. 增强 for 循环
class Main {
public static void main(String[] args) {
char[] vowels = {'a', 'e', 'i', 'o', 'u'};
for (char vowel : vowels) {
System.out.println(vowel);
}
}
}
输出:
a e i o u
输出相同,但增强 for 循环更简洁、不易出错。它是现代 Java 遍历数组和集合的推荐方式。
详情请查阅官方 Java Tutorials。
java
- C# foreach 循环:轻松遍历数组与集合
- 精通 Java 运算符:类型、语法与实战示例
- Java 注释:类型、用法与最佳实践
- 精通 Java if…else:控制流全解析
- 精通 Java 字符串:创建、方法与最佳实践
- 精通 Java 接口:概念、实现与最佳实践
- 精通 Java 匿名内部类:定义、语法与实战示例
- 精通 Java Try-With-Resources:自动资源管理详解
- Java 注解详解:类型、放置位置与实战示例
- Java 断言实战指南:尽早发现 Bug 与保障代码可靠性
- Java 判断阿姆斯特朗数(自幂数):for 循环与 while 循环实现
- Java 回文数判断:while 循环与 for 循环两种算法实现