Java 中 List 删除元素

fori循环

删除某个元素后,list的大小发生了变化,会导致遍历准确。

这种方式可以用在删除特定的一个元素时使用,但不适合循环删除多个元素时使用

增强for循环

删除元素后继续循环会报错误信息ConcurrentModificationException,但是删除完毕马上使用break跳出,则不会触发报错。

iterator 迭代器

iterator遍历过程中可以正常删除元素。但需要使用iterator.remove方法,如果使用list.remove方法同样会报ConcurrentModificationException

java 复制代码
Iterator<Integer> iterator = list.iterator();
while (iterator.hasNext()) {
	Integer a = (Integer) iterator.next();
	iterator.remove();
}

总结
1、删除list中特定的一个元素时,以上三种方式均都可以。
2、删除list中多个元素时,应该使用迭代器iterator方式。


相关推荐
学编程就要猛13 小时前
使用Spring AI配置聊天大模型实现人机交互(初阶)
java·spring ai·advisor·chatclient·chatmodel
努力努力再努力wz13 小时前
【Redis入门系列】:从 RESP 协议到 redis-plus-plus:Redis 客户端编程与 C++ 接口设计
开发语言·数据库·c++·redis·分布式·缓存·架构
代码不停13 小时前
子序列问题
java·算法
计算机学姐13 小时前
基于SpringBoot的高校爱心慈善管理系统
java·vue.js·spring boot·后端·spring·tomcat·mybatis
大梦想家a14 小时前
基于Servlet+JSP的小区物业管理系统设计与实现(Bootstrap+MySQL)
java·servlet·bootstrap
后台模板学习14 小时前
Rust vs Python 在用户认证模块中的实现:底层
开发语言·python·rust
都叫我大帅哥14 小时前
Apache Tika 4.0 正式发布:RAG 时代文件解析的终极答案
java·spring boot·spring
所念皆星海91114 小时前
Python学习---DAY10函数
开发语言·python·学习
wuyk55516 小时前
104.C 语言字节对齐:从底层原理到工程实践的完整指南
c语言·开发语言·stm32·单片机·嵌入式硬件
ZYJCSZKJ16 小时前
基于地理位置围栏的短视频POI团购系统:LBS空间索引与流量分发实践
java·服务器·数据库