Java開發筆記之List刪除元素foreach刪除元素

錯誤的循環刪除

 ArrayList<Integer> list = new ArrayList<>();
        for (int i = 0; i < 5; i++) {
            list.add(i);
        }

        for (Integer integer : list) {
            System.out.println(integer);
            if(integer.equals(3)){
                list.remove(integer);
            }
        }
        System.out.println(list);

使用迭代器的正確刪除

  ArrayList<Integer> list = new ArrayList<>();
        for (int i = 0; i < 5; i++) {
            list.add(i);
        }
        Iterator<Integer> iterator = list.iterator();
        while(iterator.hasNext()){
            System.out.println(iterator.next());
            iterator.remove();
        }
        System.out.println(list);
    }

參考:Java中集合foreach刪除元素問題

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章