zoukankan      html  css  js  c++  java
  • 如何从List中删除元素

    从List中删除元素,不能通过索引的方式遍历后删除,只能使用迭代器。

    错误的实现

    错误的实现方法
    public class Demo {
        public static void main(String... args) {
            List<String> data = new ArrayList<String>();
            data.add("abc");
            data.add("bcd");
            data.add("cde");
            data.add("def");
            data.add("efg");
            data.add("fgk");
            for (int i = 0, len = data.size(); i < len; i ++) {
                String item = data.get(i);
                if ("cde".equals(item)) {
                    data.remove(i);
                }
            }
        }
    }

    错误的方法在删除的时候,会抛出一个异常。

    正确的实现

    正确是实现方法
    public class Demo {
        public static void main(String... args) {
            List<String> data = new ArrayList<String>();
            data.add("abc");
            data.add("bcd");
            data.add("cde");
            data.add("def");
            data.add("efg");
            data.add("fgk");
            Iterator<String> it = data.iterator();
            while (it.hasNext()) {
                String item = it.next();
                if ("cde".equals(item)) {
                    it.remove();
                }
            }
        }
    }
  • 相关阅读:
    bzoj2748:[HAOI2012]音量调节
    bzoj2287:[POJ Challenge]消失之物
    bzoj1485:[HNOI2009]有趣的数列
    Codeforces 620E New Year Tree
    CF813E Army Creation
    527D.Clique Problem
    4337: BJOI2015 树的同构
    Codeforces Round #443 (Div. 1) C. Tournament
    [BZOJ4913][SDOI2017]遗忘的集合
    [八省联考2018]林克卡特树lct
  • 原文地址:https://www.cnblogs.com/CLFR/p/6344175.html
Copyright © 2011-2022 走看看