本帖最后由 格子伞 于 2015-10-24 22:32 编辑
据百度:foreach语句是java5的新特征之一,在遍历数组、集合方面,foreach为开发人员提供了极大的方便。 因为前几天是课程中,老师都没有讲到,所以自己结合百度,写点关于foreach的东西。
foreach语句是for语句的特殊简化版本,但是foreach语句并不能完全取代for语句,然而,任何的foreach语句都可以改写为for语句版本(说白了,foreach不学也没关系。。。)。
不过要注意,foreach并不是一个关键字,只是外国人习惯将这种特殊的for语句格式称之为“foreach”语句。它的语句格式为:
- for(元素类型 元素变量x : 遍历对象){
- 引用了x的java语句;
- }
复制代码
一、foreach简化数组和集合的遍历
下面通过例子简单例子看看foreach是如何简化编程的。代码如下:
- public class Foreach {
- public static void main(String[] args) {
- int[] arr1 = {12,34,56,78,21};
- int[][] arr2 = {{1,2,3},{4,5},{6,7,8,9}};
-
- //Traversal arr1:
- for (int e : arr1) {
- System.out.print(e+" ");
- }
- System.out.println();
-
- //Tranversal arr2:
- for (int[] e : arr2) {
- for (int f : e) {
- System.out.print(f+" ");
- }
- System.out.println();
- }
- }
- }
复制代码 运行结果:
可见,用foreach可以极好简化数组的遍历编程。当然,并不只是可以用来遍历1维和2维数组,多维也一样,和for一样。
二、foreach语句的局限性
如果要引用数组的索引,则foreach语句无法做到,foreach仅仅老老实实地遍历数组或者集合一遍。
可能也是因为这个原因,才不讲foreach语句的吧。
当然,这只是了解内容,大家没事看个乐吧。
|
|