• 如何从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();
                }
            }
        }
    }
  • 相关阅读:
    arm架构与体系结构
    C语言双链表遍历,插入,删除
    C语言实现单链表的遍历,逆序,插入,删除
    C语言函数的变参实用与分析
    DEBUG宏
    运算中的临时匿名变量
    main函数的传参与返回
    存储类、作用域、生命周期、链接属性
    制作动态链接库并使用
    内存管理——进程创建,执行,缺页,终止
  • 原文地址:https://www.cnblogs.com/CLFR/p/6344175.html
Copyright © 2020-2023  润新知