jdk 5.0 新增的foreach循环(用于遍历集合数组)

Posted 呱呱呱?

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jdk 5.0 新增的foreach循环(用于遍历集合数组)相关的知识,希望对你有一定的参考价值。

使用 foreach 循环遍历集合元素
 Java 5.0 提供了 foreach 循环迭代访问 Collection和数组。
 遍历操作不需获取Collection或数组的长度,无需使用索引访问元素。
 遍历集合的底层调用Iterator完成操作。
 foreach还可以用来遍历数组。

 

 

public class ForTest {

    @Test
    public void test1(){
        Collection coll = new ArrayList();
        coll.add(123);
        coll.add(456);
        coll.add(new Person("Jerry",20));
        coll.add(new String("Tom"));
        coll.add(false);

        //for(集合元素的类型 局部变量 : 集合对象)
        //内部仍然调用了迭代器。
        for(Object obj : coll){
            System.out.println(obj);
        }
    }

    @Test
    public void test2(){
        int[] arr = new int[]{1,2,3,4,5,6};
        //for(数组元素的类型 局部变量 : 数组对象)
        for(int i : arr){
            System.out.println(i);
        }
    }

    //练习题
    @Test
    public void test3(){

        String[] arr = new String[]{"MM","MM","MM"};

//        //方式一:普通for赋值
//        for(int i = 0;i < arr.length;i++){
//            arr[i] = "GG";
//        }

        //方式二:增强for循环
        for(String s : arr){
            s = "GG";
        }

        for(int i = 0;i < arr.length;i++){
            System.out.println(arr[i]);
        }


    }
}

 

 

 

 

 

 

foreach语句是java5的新特征之一,在遍历数组、集合方面,foreach为开发人员提供了极大的方便。
foreach语句是for语句的特殊简化版本,但是foreach语句并不能完全取代for语句,然而,任何的foreach语句都可以改写为for语句版本。
foreach并不是一个关键字,习惯上将这种特殊的for语句格式称之为“foreach”语句。从英文字面意思理解foreach也就是“for 每一个”的意思。实际上也就是这个意思。
foreach的语句格式:
for(元素类型t 元素变量x : 遍历对象obj){
引用了x的java语句;
}

java

格式:
for(元素类型type 元素变量x : 遍历对象obj)
{
引用了x的java语句;
}
在java中的语法:for(type x : collection)
{
}//在collection中遍历每一个对象,对象是type类型的x
实例:

 

 

以上是关于jdk 5.0 新增的foreach循环(用于遍历集合数组)的主要内容,如果未能解决你的问题,请参考以下文章

为什么阿里禁止在 foreach 循环里进行元素的 remove/add 操作

jdk1.8 新特性之 forEach 循环遍历

为什么阿里巴巴禁止在 foreach 循环里进行元素的 remove/add 操作

for-forEach-stream三种遍历方法执行效率比较与选用思考

SystemVerilog foreach 语法,用于循环遍历多维数组的低维

增强for循环