List中移除指定元素

简介: List中移除指定元素

例一:

  想在list中删除元素,先看下面的这一段代码:

图片.png
运行结果如下所示,看起来没啥问题,再看下面的例子。
图片.png
例二:

   此时,list中有多个重复的元素,我们还是用原来的方法进行去重,如下所示:

图片.png
运行结果如下所示,貌似出了个小问题,因为有个bb并没有去除掉。
图片.png
原因:

    为什么会出现这种问题呢?当删除第一个bb元素后,下一个元素就会向前移一位 , 而for循环的索引是继续往后加1的,即没删除之前list.get(2)='bb',当删除第一个“bb”后,下一个元素前移,导致此时list.get(1)='bb',list.get(2)='cc',而for循环里面的i并没有发生变化,还是继续执行+1向后遍历的操作,导致“bb”元素逃脱了并没有删除。

解决方式一:

   只需要在发生删除元素的时候,将索引里面的i向前移位即可,即元素发生前移的同时,也让索引发生前移,即i--,如下代码所示:

图片.png
输出结果如下所示:
图片.png

相关文章
|
15小时前
|
Java
JAVA——List中剔除空元素(null)的三种方法汇总
JAVA——List中剔除空元素(null)的三种方法汇总
|
15小时前
|
SQL XML Java
<foreach>元素中collection=list改成collection=array
<foreach>元素中collection=list改成collection=array
|
7月前
|
存储 人工智能 Java
如何用Java找出两个List中的重复元素,读这一篇就够了
在Java编程中,我们经常需要找出两个列表(List)中的重复元素。在本文中,我们将探讨三种方法来实现这一目标。
|
15小时前
|
算法 安全 Java
java将list中的某个元素移动位置
【2月更文挑战第12天】
|
15小时前
|
Java
Java对list集合元素进行排序的几种方式
Java对list集合元素进行排序的几种方式
27 0
|
15小时前
判断两个不重复的list集合是否相等 只比较元素值 不比较顺序
判断两个不重复的list集合是否相等 只比较元素值 不比较顺序
26 0
|
15小时前
|
存储 JSON NoSQL
Redis中当存储数据为List集合时,如何控制集合内每个数据元素的生命周期
Redis中当存储数据为List集合时,如何控制集合内每个数据元素的生命周期
98 0
|
5月前
|
索引 Python
python:给List添加元素
python:给List添加元素
45 0
|
9月前
List 集合去除重复元素的5种方法
List 集合去除重复元素的5种方法
179 0
|
15小时前
|
存储 安全 算法
Java一分钟之-Java集合框架入门:List接口与ArrayList
【5月更文挑战第10天】本文介绍了Java集合框架中的`List`接口和`ArrayList`实现类。`List`是有序集合,支持元素重复并能按索引访问。核心方法包括添加、删除、获取和设置元素。`ArrayList`基于动态数组,提供高效随机访问和自动扩容,但非线程安全。文章讨论了三个常见问题:索引越界、遍历时修改集合和并发修改,并给出避免策略。通过示例代码展示了基本操作和安全遍历删除。理解并正确使用`List`和`ArrayList`能提升程序效率和稳定性。
7 0