博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
List<T>的循环删除
阅读量:5286 次
发布时间:2019-06-14

本文共 513 字,大约阅读时间需要 1 分钟。

场景:要删除List<T>中的元素

  List<T> tList;

  for(T t:tList){

       if(true){

         tempList.remove(t);

    }

     }

     运行时报错,因为在remove操作后tList已改变,for循环时拿不到索引值报错。

解决方法一

  List<T> tList;

  List<T> tempList = tList;

  for(T t:tList){

    if(true){

         tempList.remove(t);

    }

     }

  创建tempList存放tList,经验证此方法不可行,因tempList和tList指向同一个地址,拿不到索引值的错误同样存在,此方法不可行

解决方法二

  List<T> tList;

  List<T> tempList = new ArrayList<T>();

  for(T t:tList){

    if(false){

         tempList.add(t);

    }

     }

     经验证,此方法可行。

转载于:https://www.cnblogs.com/siyu/p/3438684.html

你可能感兴趣的文章
070102_赌博设计:概率的基本概念,古典概型
查看>>
IT人生的价值和意义 感觉真的有了
查看>>
JS DOM对象
查看>>
OGR – Merging Multiple SHP files
查看>>
创业公司该不该被收购?(转)
查看>>
sqlserver 行转列、列转行[转]
查看>>
【IScroll深入学习】解决IScroll疑难杂症
查看>>
python 数据类型
查看>>
108-PHP类成员protected和private成员属性不能被查看数值
查看>>
css控制height充满浏览器视口
查看>>
python学习之 - XML
查看>>
Python--GIL 详解
查看>>
大道至简读后感(第四章)
查看>>
IDA IDC Tutorials: Additional Auto-Commenting
查看>>
k8s-存储卷1-十二
查看>>
INSERT IGNORE INTO / REPLACE INTO
查看>>
Python数据类型-布尔/数字/字符串/列表/元组/字典/集合
查看>>
【刷题】SPOJ 705 SUBST1 - New Distinct Substrings
查看>>
IEEE 754浮点数表示标准
查看>>
declare 结构用来设定一段代码的执行指令
查看>>