Java 有一种功能很强的循环结构,可以用来一次处理数组(或者其他元素集合)中的每个元素,而不必考虑指定下表值。
这种增强的for循环的语句格式为:
for(variable : collection) statement
它定义一个变量用于暂存集合中的每一个元素,并执行相应的语句(当然也可以是语句块)。collection这一集合表达式必须是一个数组或者是一个实现了Iterable接口的类对象(例如ArrayList)。
例如,
for(int element : a)
System.out.println(element);
解析:打印数组a的每一个元素,一个元素占一行。
当然,使用传统的for循环也可以获得同样的效果:
for(int i = 0; i < a.length; i++)
System.out.println(a[i]);
但是,for each循环语句显得更加简洁~更不易出错,因为你不必为下标的起始值和终止值而操心。
for each循环语句的循环变量将会遍历数组中的每个元素,而不是下标值。
有一个更加简单的方式可以打印数组中的所有值,即利用Arrays类的toString方法。