foreach与数组
J2SE 5.0新增了foreach的语法,又称强化的for循环(Enhanced for Loop),其应用的对象之一是在数组的依次存取上。foreach语法如下:
for(type element : array) { System.out.println(element)...}直接以实例的方式来说明会更容易了解这个语法如何使用,在J2SE 5.0之前可以使用以下的方式来依次存取数组中的元素:
int[] arr = {1, 2, 3, 4, 5};for(int i = 0; i < arr.length; i++) System.out.println(arr[i]);在J2SE 5.0中可以使用新的foreach语法,这么写:
int[] arr = {1, 2, 3, 4, 5};for(int element : arr) System.out.println(element);每一次从arr中取出的元素,会自动设定给element,您不用自行判断是否超出了数组的长度,注意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); }}