foreach循环原理

 List<String> arrList = new ArrayList<>();
        arrList.add("1");
        arrList.add("2");
        arrList.add("3");
        for(String ag:arrList){
            System.out.println(ag);
        };
        for (Iterator<String> iterat = arrList.iterator(); iterat.hasNext();){
            System.out.println(iterat.next());
        }
        数组是用下标遍历来实现
        for (int i = 0; i < arr.length; i++) { 
            type var = arr[i];
            body-of-loop
        }

1、ArrayList之所以能使用foreach循环遍历,是因为ArrayList所有的List都是Collection的子接口,而Collection是Iterable的子接口,ArrayList的父类AbstractList正确地实现了Iterable接口的iterator方法。

2、任何一个集合,无论是JDK提供的还是自己写的,只要想使用foreach循环遍历,就必须正确地实现Iterable接口

你可能感兴趣的:(java)