• 遍历删除List中的元素,会报错?


    经常会碰到遍历集合,然后删除里面的对象报错, 纠结半天, 百度了一下,有大神说不能用for-each,  for , 只能用迭代器,真的吗?  我就删成功了呢,看代码,请大神们指正! 

    public static void main(String[] args) {
            //添加
            List<String> names = new ArrayList<String>();
            names.add("张三");
            names.add("李四");
            names.add("王五");
    
            // 遍历显示
            for (int i = 0; i < names.size(); i++) {
                System.out.println(names.get(i));
            }
            
            //查找
            if (names.indexOf("李四") >= 0 ){
                System.out.println("李四的位置是:"+ names.indexOf("李四"));
            }
                
    //-------------失败--------
            // foreach删除:报错
    //        for (String name: names){
    //            names.remove(name);
    //        }
            
            // 从小到大删除 0-》1-》2:失败!
    //        names.remove(0);
    //        names.remove(1);
    //        names.remove(2);
    //-------------失败--------    
            
            
            // 从大到小删除 2-》1-》0:成功!
            names.remove(2);
            names.remove(1);
            names.remove(0);
            
            // 重新添加新内容
            names.add("aaaaaaa");
            names.add("bbbbbbb");
            names.add("bbbbbbb");
            
            // 遍历并删除:从大到小循环删除
            for (int i = names.size(); i > 0; i--) {
                names.remove(i-1);
            }
            names.add("99999");
            names.add("88888");
            names.add("77777");
            
            //使用迭代器删除
            Iterator<String> iterator = names.iterator();
            while(iterator.hasNext()){
                iterator.next();
                iterator.remove();
            }
            
            if (names.isEmpty()) {
                System.out.println("集合为空");
            }
        }
  • 相关阅读:
    QT 图形视图框架
    QSting, QChar, char等的转换
    ucosii(2.89)mbox 应用要点
    ucosii(2.89)semaphore 应用要点
    ucosii(2.89)mutex 应用要点
    ucosii(2.89) 在Lpc1765移植中定时器的使用。
    c++中虚函数的需要性,虚析构函数的必要性
    转 在Qt中用QAxObject来操作Excel
    关于 QObject 类
    关于sigleton模式
  • 原文地址:https://www.cnblogs.com/sunxi2003/p/5891192.html
Copyright © 2020-2023  润新知