就是方便遍历集合的那个····

解决方案 »

  1.   

    你指的是迭代?这个?
    String[] strs = ****;
    for(String str:strs){
       System.out.println(str);
    }
      

  2.   

    String[] strs={"1","2","3"};
    //旧
    for(int i=0;i<s.length;i++){
       ....
    }
    //新
    for(String s:strs){
        ....
    }新的比起旧的更加方便,省去了增加变量i的烦恼,也减少了代码出错的可能性(多个循环中i可能会被重复用)。
      

  3.   

    哦 看懂了,是把字符串一个一个字符输出是吧?那能不能改成for(char str:strs){
     谢谢
      

  4.   

    这不行。String是单元对象,不能作为集合使用。可以这样for(char str:"hello".toCharArray()){记住冒号后面必须是数组、Collection。
      

  5.   

    for循环中使用冒号,是JAVA1.5 增强的for 循环的新特性:enhanced for loop。      所谓“增强的for 循环”,主要也是针对容器的。使用该项特性时,开发者可以将“利用iterator 遍历容器”的逻辑交给编译器来处理。例如下列代码:
    void cancelAll(Collection c) {
    for (Iterator i = c.iterator(); i.hasNext(); ) {
    TimerTask tt = (TimerTask) i.next();
    tt.cancel();
    }
    }
    可以用增强的for 循环改写为:
    void cancelAll(Collection c) {
    for (Object o : c)
    ((TimerTask)o).close();
    }
    编译器判断对象c 是一个Collection 子对象(即是容器)之后,就会允许使用增强的for 循环
    形式,并自动取到c 的迭代器,自动遍历c 中的每个元素。
    可以看到,上面的代码中仍然有一个强制类型转换(((TimerTask)o).close();)。实际上,这
    项特性应该普遍地与泛型结合,以获得最大的利益。结合泛型之后,上述代码变成:
    void cancelAll(Collection c) {
    for (TimerTask task : c)
    task.cancel();
      

  6.   


    严格来说,实现了java.lang.Iterable的类都可以for-each.
    譬如您可以自己写一个class:
    class MyIt<T> implements java.lang.Iterable<T>{
        public Iterator<T> iterator() {
        return ...;
        }
    }
    然后在程序里面for-each:
    MyIt<String> it=new MyIt<String>();
    for(String n:it){
    ...
    }
      

  7.   

    类似于 .net的 for-each
    不过这个不敢说新了··· 这个就是写的时候简单些
      

  8.   

    新的for循环,速度更快,是老的for循环的好多倍;但是并不能完全替代老的for循环,这点要请高手指教一下,例子暂没举出》》》》》
      

  9.   


          这个东西,也是借鉴c#的foreach。为了简化for循环。       至于使用哪个就看个人爱好了。如果你想记录元素的下标以及一些其他操作,那么就需要使用for循环,如果只是为了获取元素,或者遍历元素,简化for循环比较简洁。
      

  10.   

    java新循环:
    int A={1,2,3,4,5};
    for(int i:A)
    System.out.println(i);
    输出结果是:
    1
    2
    3
    4
    5