在java 5以后,java提供了一种更简单的循环:foreach循环,这种循环遍历数组和集合更加简洁。使用foreach循环遍历数组和集合时,无须获得数组和集合长度,无须根据索引来访问数组元素和集合元素,foreach循环自动遍历数组和集合的每个元素。
foreach循环的语法格式如下:
for(type variableName : array | collection){
}
在上面的语法格式中,type是数组元素或集合元素的类型,variableName是一个形参名,foreach循环将自动将数组元素、集合元素依次赋给该变量。例如:
int[] a={1,2,3,4,5};
foreach(int i : a){
System.out.println(i);
}
当然使用传统的方式也可以实现:
for(int i=0 ; i<a.length ; i++){
System.out.println(a[i]);
}
但是,foreach循环语句显得更加简洁、更不容易出错(不必为下标的起始值和终止值而操心)。
如果要处理一个数组或集合的所有元素,foreach相对于传统的循环有很大优势,然而很多场合下,还是要使用传统的for循环。例如,如果不希望遍历集合中的每个元素,或者在循环内部需要使用下标值等。