主要有以下3种方法:
- 使用Iterator的remove()方法
- 使用for循环正序遍历
- 使用for循环倒序遍历
1. 使用Iterator的remove()方法
public static void main(String[] args) { List<String> platformList = new ArrayList<>(); platformList.add("博客园"); platformList.add("CSDN"); platformList.add("掘金"); Iterator<String> iterator = platformList.iterator(); while (iterator.hasNext()) { String platform = iterator.next(); if (platform.equals("博客园")) { iterator.remove(); } } System.out.println(platformList); }
每次删除一个元素,都会将modCount的值重新赋值给expectedModCount,这样2个变量就相等了,不会触发java.util.ConcurrentModificationException异常。
2. 使用for循环正序遍历
public static void main(String[] args) { List<String> platformList = new ArrayList<>(); platformList.add("博客园"); platformList.add("CSDN"); platformList.add("掘金"); for (int i = 0; i < platformList.size(); i++) { String item = platformList.get(i); if (item.equals("博客园")) { platformList.remove(i); i = i - 1; } } System.out.println(platformList); }
3. 使用for循环倒序遍历
public static void main(String[] args) { List<String> platformList = new ArrayList<>(); platformList.add("博客园"); platformList.add("CSDN"); platformList.add("掘金"); for (int i = platformList.size() - 1; i >= 0; i--) { String item = platformList.get(i); if (item.equals("掘金")) { platformList.remove(i); } } System.out.println(platformList); }
相关推荐
这是最近面试时被问到的1道面试题,本... List platformList = new ArrayList(); platformList.add("博客园"); platformList.add("CSDN"); platformList.add("掘金"); for (String platform : platformList) { if
std::list没有[]函数或Get()函数,又不能总是front()的方式排出,如何遍历获得其中的元素呢?比如 遍历显示元素内容为例 ,用两种方式实现。
主要介绍了C++ STL list 遍历删除出错解决方案的相关资料,这里对出错进行分析,并给出正确的解决方法,需要的朋友可以参考下
List集合遍历和删除操作
主要介绍了C#遍历List并删除某个元素的方法,实例分析了正序与倒序遍历list及删除元素的使用技巧,需要的朋友可以参考下
CheckBoxList 遍历 免费下载
Freemarker中遍历list集合实例
Listiterator迭代器的方向遍历,在反向遍历时 源码中 index中的初值需要在定义的时候传入size集合长度 或者通过正向遍历,将nextIndex的值变为集合的长度 然后public boolean hasPrevious() { return nextIndex > 0...
java List集合遍历测试 两个List,list1和list2.
jquery获得单选框和下拉框的值,java日期处理,遍历list,遍历map
与设计模式匹配的容器的源码分享出来的,可联系博主,免费分享
初学Python,遇到过这样的问题,在遍历list的时候,删除符合条件的数据,可是总是报异常,代码如下: num_list = [1, 2, 3, 4, 5] print(num_list) for i in range(len(num_list)): if num_list[i] == 2: num_...
java使用ListIterator对List遍历时添加修改删除
NULL 博文链接:https://jsjxqjy.iteye.com/blog/2072705
在本篇文章中小编给大家分享了关于HashMap和List遍历方法及如何遍历删除元素知识点总结,需要的朋友们参考下。
c标签遍历集合嵌套的List集合
遍历一个文件夹下面的所有文件(包括文件夹下的文件夹)
遍历list集合