遍历删除List中的元素,会报错? 用iterator.remove() 完美解决
经常会碰到遍历集合,然后删除里面的对象报错, 纠结半天, 百度了一下,有大神说不能用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("集合为空");}}
遍历删除List中的元素,会报错? 用iterator.remove() 完美解决相关推荐
- 如何正确遍历删除List中的元素,你会吗?
遍历删除List中的元素有很多种方法,当运用不当的时候就会产生问题.下面主要看看以下几种遍历删除List中元素的形式: 1.通过增强的for循环删除符合条件的多个元素 2.通过增强的for循环删除符合 ...
- 为什么简单的删除集合中的元素竟然报错了?
作者 | 七十一 来源 | 程序员巴士 前言 什么是快速失败:fail-fast 机制是java集合(Collection)中的一种错误机制.它只能被用来检测错误,因为JDK并不保证fail-fast ...
- java遍历list删除数据,遍历删除List中的元素方法
red hat enterprise linux 8到图书 129.9元 (需用券) 去购买 > 1.通过增强的for循环删除符合条件的多个元素 /** * 使用增强的for循环 * 在循环过程 ...
- pycharm终端中安装yaml,报错Requirement already satisfied 的解决办法
直接输入安装命令,报错Requirement already satisfied ......... 在网上试过很多办法之后,终于找到了能解决的办法. 也就是在安装的时候加上具体的路径,这里的路径我是 ...
- WSL2 Ubuntu中apt update命令报错,无法解析域名解决方法
参考链接 参考链接 1. sudo apt-get update失败 在ubuntu16中,当我们输入sudo apt-get update会失败,这里有很多原因: (1)网络原因----先检查网络好 ...
- yum安装报错Error: Package,完美解决
百度后最终解决: 1. yum clean all 2.rpm --rebuilddb 3. yum update rpm 也有自己的数据库,出现此错误是因为数据库异常导致的 所以 此时重构一下数据库 ...
- Java中遍历删除ArrayList中多个元素
Java中遍历删除ArrayList多个元素 Iterator itr = list.iterator(); while(itr.hasNext()) {int i = itr.next();if ( ...
- Python中删除set中指定元素元素不存在时不报错:s.discard()元素不存在时报错:s.remove()
[小白从小学Python.C.Java] [Python-计算机等级考试二级] [Python-数据分析] Python中删除set中指定元素 元素不存在时不报错:s.discard() 元素不存在时 ...
- python list遍历删除_Python中list循环遍历删除数据的正确方法
前言 初学Python,遇到过这样的问题,在遍历list的时候,删除符合条件的数据,可是总是报异常,代码如下: num_list = [1, 2, 3, 4, 5] print(num_list) f ...
最新文章
- 从微盟36小时故障,谈谈数据安全这点事
- 限制TextBox输入的内容
- python --闭包学习
- 《笑谈银行IT》—畅谈“银行IT系统”
- 计算机网络恶搞图片,网络恶搞图片遭-搜狐新闻
- 视频 java 我行我素管理系统 随堂视频
- python基础:抓取博客网页上的图片并且保存的例子
- invalid use of incomplete type 报
- Windows Home Server 常见问题
- linux为mysql创建gpower_系统运维|RHEL/CentOS 7中安装并配置 PowerDNS 和 PowerAdmin
- iOS动画系列之四:基础动画之平移篇
- Java学习笔记--Swing2D图形
- 把GBK源码文件转UTF8的JAVA代码说明
- 嵌入式linux基础学习全套精品视频教程
- 麻辣香锅(Spicy Hot Pot)浏览器劫持病毒应急方法
- 痛心,京东程序员删库跑路获刑!
- 箩筐火车免费wifi v4.3.0
- The Onion Router洋葱路由器
- Excel2019关闭时无响应
- Android 6.0 Marshmallow介绍