以前不是for( int i=0;i<10;i++) 不是这样的吗?        int arr[] = {2, 3, 1}; 
        System.out.println("----1----排序前的一维数组"); 
 *******for (int x : arr) { 
            System.out.println(x); //逐个输出数组元素的值 
        } 

解决方案 »

  1.   

    JDK 5.0 支持的一种新的写法
    for(:)循环
      

  2.   

    这是JDK1.5之后引入的.....
    很好用...
      

  3.   

    是跟C#中的foreach
     是一样的吧。。
     
      

  4.   

    有的,这个叫“增强型FOR循环”,你在搜索引擎里面输入增强型FOR循环可以得到很多这方面的资料。
      

  5.   

    008 来也~
    这个是JDK5。0的新特性,
    非常OK的。。
    好用
      

  6.   

    java 5.0 的几个增加的特性之一,
    用起来挺不错
      

  7.   

    这是jdk5.0中增强的for 循环,利大于弊,最好别用
      

  8.   

    这是jdk5.0 新增的,你百度一下不就行了吗FOREACH  是个很经典的方法。
      

  9.   

    在Java中的foreach循环是很慢的,内部采用迭代器进行处理,特别是针对List。
      

  10.   

    for   (int   x   :   arr) 
    这个是java中foreach的写法 
    int   表示进行循环迭代的变量类型 
    x   表示变量名     
    :相当于C#中foreach的in   操作符 
    arr()应该是一个整型数组 
    这个写法的意思是将arr数组中的项每次拿给一个赋给变量x 
    PS:需要注意的是x只是一个变量名,所以不一定要写x可以是任何符合变量命名的东西。比如str   i   j   k....
      

  11.   

    应该说 只要实现了Iterable接口 ,都可以使用 for each
      

  12.   

    呵呵
    5.0 以后的 新特性
    for each 
      

  13.   

    这个东西看起来先进,性能是相当差的,唯一有用的地方在于有些数据结构没有取值函数,必须把其转换成其他数据结构才能取出值来,用这个循环避免了这个操作,典型就是set,set没有get方法,取不出来值,如果你把数据存在set中,
    for(User u: set){ ... }是相当方便的 
      

  14.   

    for(object o : list) {
    //可以依次把集合或者数组里的元素取出来。
    }
      

  15.   

    这是jdk5.0中增强的for   循环,利大于弊,最好别用.....前后矛盾
    新的东西当然比旧的好用,不如旧的好还出它干什么...这么多说不用....用不习惯而已,说话要客观
    不过从效率上还有待研究,从便用上,不用多说肯定比用迭代器快
    JAVA在5.0中,引入了ITERABLE接口该接口包含苞欲放一个能够产生ITERATOR的ITERATOR方法(看来原理都一样,效率也该一样吧未测试)
    这个接口被FOREACH(楼主所说的)用来在序列中移动
    iterator()方法实现了Iterator<String>的匿名内部类的实例.
    在J2SE5.0中大量的类都是Iterable类型,主要包括所有的Collection类(不包括MAP)
    Foreach也因此不能迭代数组,因为数组没有继承这个接口,但是可以手工转换
                                                 (摘自JAVA编程思想<<THINK IN JAVA>>)