大可制作:QQ群:31564239(asp|jsp|php|mysql)

Java Gossip: foreach与数组

J2SE 5.0 新增foreach的语法,它可以应用于数组的循序存取上,其语法如下:
for(type element : array) {
  System.out.println(element)....
}

例如传统上循序存取一个数组的方式如下:
int[] arr = {1, 2, 3, 4, 5};
for(int i = 0; i < arr.length; i++)
    System.out.println(arr[i]);
 

在J2SE 5.0中可以这么写:
int[] arr = {1, 2, 3, 4, 5};
for(int element : arr)
    System.out.println(element);
 
注意,element的声明必须在for()之中,例如以下就无法通过编译:
int[] arr = {1, 2, 3, 4, 5};
int element = 0;
for(element : arr)
    System.out.println(element);


如果是对象的话,作法也是类似,例如存取字符串数组的话,可以如下:
String[] names = {"caterpillar", "momor", "bush"};
for(String name : names)
     System.out.println(name);
 

那么二维数组呢?基本上您要是了解数组本身就是个对象,您自然就会知道如何存取,举个例子:
int[][] arr = {{1, 2, 3},
               {4, 5, 6},
               {7, 8, 9}};
for(int[] row : arr)
    for(int element : row)
        System.out.println(element);
 
依此类推,您可以自行推出三维以上的数组要如何使用foreach的方式来存取。