移除List中不滿足條件的數據

剛開始想到用list.remove(i),後面打印數據發現很多並沒有移除掉,然後查了一下百度才知道原因,

然後發現最好的方法是使用迭代刪除,代碼如下,

//準備數據
        List<Student> list = new ArrayList<>();
        list.add(new Student("male"));
        list.add(new Student("female"));
        list.add(new Student("female"));
        list.add(new Student("male"));
 
        //遍歷刪除,除去男生
        Iterator<Student> iterator = list.iterator();
        while (iterator.hasNext()) {
            Student student = iterator.next();
            if ("male".equals(student.getGender())) {
                iterator.remove();//使用迭代器的刪除方法刪除
            }
        }

參考:java中List遍歷刪除元素

參考:java-list-remove()用法淺析 解決java list remove() 數據不對的問題

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