|
[J2SE 1.5]逐渐挖掘Enhanced for Loop(1)
逐渐挖掘Enhanced for Loop 更简单的进行遍历
J2SE 1.5提供了另一种形式的for循环。借助这种形式的for循环,可以用更简单地方式来遍历数组和Collection等类型的对象。本文介绍使用这种循环的具体方式,说明如何自行定义能被这样遍历的类,并解释和这一机制的一些常见问题。
在Java程序中,要“逐一处理”——或者说,“遍历”——某一个数组或Collection中的元素的时候,一般会使用一个for循环来实现(当然,用其它种类的循环也不是不可以,只是不知道是因为for这个词的长度比较短,还是因为for这个词的含义和这种操作比较配,在这种时候for循环比其它循环常用得多)。 对于遍历数组,这个循环一般是采取这样的写法: 清单1:遍历数组的传统方式/* 建立一个数组 */ int[] integers = {1, 2, 3, 4}; /* 开始遍历 */ for (int j = 0; j < integers.length; j++) { int i = integers[j]; System.out.println(i); }
而对于遍历Collection对象,这个循环则通常是采用这样的形式: 清单2:遍历Collection对象的传统方式/* 建立一个Collection */ String[] strings = {"A", "B", "C", "D"}; Collection stringList = Java.util.Arrays.asList(strings); /* 开始遍历 */ for (Iterator itr = stringList.iterator(); itr.hasNext();) { Object str = itr.next(); System.out.println(str); } 而在Java语言的最新版本——J2SE 1.5中,引入了另一种形式的for循环。借助这种形式的for循环,现在可以用一种更简单地方式来进行遍历的工作。 1. 第二种for循环不严格的说,Java的第二种for循环基本是这样的格式: for (循环变量类型 循环变量名称 : 要被遍历的对象) 循环体
借助这种语法,遍历一个数组的操作就可以采取这样的写法: 清单3:遍历数组的简单方式/* 建立一个数组 */ int[] integers = {1, 2, 3, 4}; /* 开始遍历 */ for (int i : integers) { System.out.println(i);//依次输出“1”、“2”、“3”、“4” }
|