Java遍历一维数组首选传统for循环(需索引或修改元素)、增强for循环(只读且非空)、Arrays.stream()(需链式操作);三者依需求选用,无绝对最优,关键看是否需要下标、是否修改、是否为空。

for 循环是遍历数组或集合最常用的方式之一,写法取决于编程语言和具体需求。下面以几种主流语言为例,说明常见、实用的写法。
Java 中的传统 for 循环遍历数组
适用于已知长度、需要索引的操作(比如修改元素、比较相邻项):
- 语法:用 int i = 0; i
- 示例:int[] nums = {1, 2, 3};
for (int i = 0; i System.out.println(nums[i]);
}
Java 增强 for 循环(for-each)遍历集合或数组
更简洁,适合只读操作,不关心下标:
- 语法:for (Type item : collection)
- 示例:List
list = Arrays.asList("a", "b", "c");
for (String s : list) {
System.out.println(s);
} - 注意:不能在遍历时直接删除或添加元素,否则抛出 ConcurrentModificationException
Python 的 for 循环遍历列表/元组/字符串
天然支持迭代,无需索引即可取值;需要索引时可用 enumerate():
- 基础遍历:fruits = ["apple", "banana"]
for fruit in fruits:
print(fruit) - 带索引:for i, fruit in enumerate(fruits):
print(i, fruit) - 遍历字典键值:for key, value in my_dict.items():
JavaScript 的 for 循环与 for...of / for...in
区分清楚用途很重要:
- 传统 for:适合需索引或控制步长,如 for (let i = 0; i
- for...of:遍历可迭代对象(数组、Set、Map 的值),推荐用于取值:for (const item of arr) { ... }
- for...in:遍历对象属性名(包括原型链),一般不用来遍历数组










