for (int num : numbers)
是 Java 中的一种 增强型 for 循环(也称为 for-each 循环)。它的作用是遍历数组或集合中的每一个元素,并对每个元素执行循环体中的操作。
1. 增强型 for 循环的语法
java
Copy
for (元素类型 变量名 : 数组或集合) { // 循环体 }
元素类型:数组或集合中元素的类型(如
int
、String
等)。变量名:每次循环时,当前元素的值会赋给这个变量。
数组或集合:需要遍历的数组或集合(如
int[]
、List
等)。
2. 增强型 for 循环的作用
遍历数组或集合:依次访问数组或集合中的每个元素。
简化代码:相比传统的
for
循环,增强型for
循环更简洁,不需要手动管理索引。
3. 例子说明
例子 1:遍历数组
java
Copy
int[] numbers = {1, 2, 3, 4, 5}; for (int num : numbers) { System.out.print(num + " "); }
int num
:每次循环时,num
会依次取numbers
数组中的每个元素的值。执行过程:
第一次循环:
num = 1
,输出1
。第二次循环:
num = 2
,输出2
。以此类推,直到遍历完所有元素。
输出结果:
Copy
1 2 3 4 5
例子 2:遍历集合
java
Copy
import java.util.ArrayList; import java.util.List; public class Main { public static void main(String[] args) { List<String> fruits = new ArrayList<>(); fruits.add("Apple"); fruits.add("Banana"); fruits.add("Orange"); for (String fruit : fruits) { System.out.println(fruit); } } }
String fruit
:每次循环时,fruit
会依次取fruits
集合中的每个元素的值。输出结果:
Copy
Apple Banana Orange
4. 与传统 for 循环的对比
传统 for 循环
java
Copy
for (int i = 0; i < numbers.length; i++) { int num = numbers[i]; System.out.print(num + " "); }
增强型 for 循环
java
Copy
for (int num : numbers) { System.out.print(num + " "); }
传统 for 循环:需要手动管理索引(如
i
),适合需要访问索引的场景。增强型 for 循环:更简洁,适合只需要遍历元素的场景。
5. 注意事项
只读遍历:增强型
for
循环只能访问元素,不能修改数组或集合的结构(如删除或添加元素)。适用于数组和集合:可以用于数组、
List
、Set
等实现了Iterable
接口的集合类。
6. 总结
for (int num : numbers)
是一种增强型for
循环,用于遍历数组或集合中的每个元素。它简化了代码,适合只需要访问元素的场景。
如果需要修改数组或集合的结构,或者需要访问索引,可以使用传统
for
循环。