行业资讯 2025年08月6日
0 收藏 0 点赞 159 浏览 2171 个字
摘要 :

文章目录 1.remove()、removeAll()和removeIf()方法的语法 2.按指定索引移除元素 3.按值移除元素 4.删除满足匹配条件的元素 5.结论 Java ArrayList类是集合框架的一部……




  • 1.remove()、removeAll()和removeIf()方法的语法
  • 2.按指定索引移除元素
  • 3.按值移除元素
  • 4.删除满足匹配条件的元素
  • 5.结论

Java ArrayList类是集合框架的一部分,允许使用实例方法添加和移除元素。在内部,它维护一个可调整大小的数组,根据添加或移除元素的操作而动态增长或缩小。

本教程讨论了使用remove()、removeAll()和removeIf()方法从ArrayList中移除单个或多个元素的不同方法。

  • remove()方法通过指定的值或索引来移除单个元素。
  • removeAll()方法从当前列表中移除指定集合的所有元素。
  • removeIf()方法移除匹配Predicate的所有元素。
//快速指南
ArrayList<String> arraylist2 = new ArrayList<>();
//1 - 从指定索引位置移除一个元素。
arraylist.remove(indexPosition);
//2 - 根据元素的值移除第一个出现的元素。
arraylist.remove(element);
//3 - 从ArrayList中移除指定集合的所有元素。
arraylist.removeAll(Arrays.asList(ele1, ele2, ele3));
//4 - 根据条件移除所有匹配的元素。
arraylist.removeIf(e -> e.contains(\"temp\"));

1.remove()、removeAll()和removeIf()方法的语法

remove()方法是重载的。

E remove(int index)
boolean remove(E element))
  • remove(int index) – 移除指定索引处的元素并返回被移除的项。
  • remove(E element) – 根据值移除指定元素,并如果成功移除元素则返回true,否则返回false。

removeAll()接受一个集合并从当前列表中移除指定集合的所有元素。

boolean removeAll(Collection<?> c)

removeIf()接受一个Predicate以匹配要移除的元素。

boolean removeIf(Predicate<? super E> filter)

2.按指定索引移除元素

remove(index)方法移除列表中指定位置处的元素E。它会移除该位置上的元素,并将所有后续元素向左移动(它们的索引将减一)。

请注意,列表索引从0开始。

ArrayList<String> namesList = new ArrayList<String>(Arrays.asList( \"alex\", \"brian\", \"charles\") );
System.out.println(namesList);  //list size is 3
//移除索引1处元素
namesList.remove(1);
System.out.println(namesList);  //list size is 2

程序输出:

[alex, brian, charles]
[alex, charles]

3.按值移除元素

remove(Object)方法移除列表中指定元素E的第一个出现。由于此方法移除对象,列表大小会减少一个。

ArrayList<String> namesList = new ArrayList<>(Arrays.asList( \"alex\", \"brian\", \"charles\", \"alex\") );
System.out.println(namesList);
namesList.remove(\"alex\");
System.out.println(namesList);

程序输出:

[alex, brian, charles, alex]
[brian, charles, alex]

要移除指定元素的所有出现,我们可以使用removeAll()方法。由于此方法接受一个集合参数,因此我们首先需要将要移除的元素包装在一个List中。

namesList.removeAll(List.of(\"alex\"));

程序输出:

[brian, charles]

4.删除满足匹配条件的元素

我们可以使用Java 8流的另一种非常简单的语法,使用removeIf()方法根据元素值移除所有元素。

以下Java程序使用List.removeIf()从ArrayList中根据元素值移除多个元素。

ArrayList<String> namesList = new ArrayList<String>(Arrays.asList( \"alex\", \"brian\", \"charles\", \"alex\") );
System.out.println(namesList);
namesList.removeIf( name -> name.equals(\"alex\"));
System.out.println(namesList);

程序输出:

[alex, brian, charles, alex]
[brian, charles]

5.结论

ArrayList类(或集合框架中的任何其他列表类型)提供了使用各种技术移除元素的便捷方法。每种技术都适用于不同的用例。

了解何时使用哪种移除方法是在应用程序中进行数据处理时有效地使用ArrayList类的关键。

微信扫一扫

支付宝扫一扫

版权: 转载请注明出处:https://www.zuozi.net/9307.html

管理员

相关推荐
2025-08-06

文章目录 一、Reader 接口概述 1.1 什么是 Reader 接口? 1.2 Reader 与 InputStream 的区别 1.3 …

988
2025-08-06

文章目录 一、事件溯源 (一)核心概念 (二)Kafka与Golang的优势 (三)完整代码实现 二、命令…

465
2025-08-06

文章目录 一、证明GC期间执行native函数的线程仍在运行 二、native线程操作Java对象的影响及处理方…

348
2025-08-06

文章目录 一、事务基础概念 二、MyBatis事务管理机制 (一)JDBC原生事务管理(JdbcTransaction)…

456
2025-08-06

文章目录 一、SnowFlake算法核心原理 二、SnowFlake算法工作流程详解 三、SnowFlake算法的Java代码…

517
2025-08-06

文章目录 一、本地Jar包的加载操作 二、本地Class的加载方法 三、远程Jar包的加载方式 你知道Groo…

832
发表评论
暂无评论

还没有评论呢,快来抢沙发~

助力内容变现

将您的收入提升到一个新的水平

点击联系客服

在线时间:08:00-23:00

客服QQ

122325244

客服电话

400-888-8888

客服邮箱

122325244@qq.com

扫描二维码

关注微信客服号