for循環、增強for循環和迭代器的區別


1、迭代器是用於方便集合遍歷的,實現了Iterable接口的集合都可以使用迭代器來遍歷。使用迭代器遍歷元素時,除了查看之外,只能做remove操作。

2、增強for循環,內部使用的是迭代器,所以它的操作對象是數組和可以使用迭代器的集合。遍歷時只能查看,無法修改、刪除、增加。

所以如果需要對遍歷的對象做增刪修改的操作,使用普通的for循環來操作。

迭代器/增強for循環

    @Test
    public void test003(){
        List<Integer> list = new ArrayList<>();
        list.add(22);
        list.add(242);
        list.add(232);
        list.add(212);
        iteratorApply(list);
        forApple(list);

    }

    //迭代器
    public void iteratorApply(List<Integer> list){
        Iterator<Integer> it = list.iterator();
        while (it.hasNext()){
            int num = it.next();
            System.out.println(num);
            if (num == 22){
                it.remove();
            }
        }
        System.out.println(list.size());
    }

    //增強for循環
    public void forApple(List<Integer> list){
        for (int num : list){
            System.out.println(num);
        }
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM