J2SE 5.0(Enhanced for Loop)引入了一种新的更加简洁的for语法用于数组和容器,及foreach语法,又称强化的for循环,表示不必创建整型变量去对由访问项构成的序列进行计数,foreach将自动产生每一项。其基本语法如下:
for(type element:array)
{
语句或块 //循环体
}
其应用对象之一是在数组的依次存取上,下面通过实例加以说明
int[] arr={1,2,3,4,5};
for(int element:arr) //对比原来程序 for(int i=0;i<arr.length;i++)
System.out.print(element + ",");
//输出:1,2,3,4,5,
每一次从arr中取出的元素会自动设定给element,你不用自行判断是否超过了数组的长度,注意element的类型必须与数组元素的元素类型相同。
如果是二维数组,可以把数组本身当成一个对象,这样就会知道如何使用foreach存取二维数组。据个例子:
int [][]arr=
{
{1,2,3},
{4,5,6},
{7,8,9}
};
for(int[] row : arr)
{
for(int element : row)
{
System.out.println(element);
}
}