C# list删除报错
在C#中,如果您在遍历List的同时尝试删除元素,可能会遇到错误。因为这会改变List的结构,导致枚举器失效。
解决方法:
- 使用for循环倒序删除:
点击查看代码
for (int i = list.Count - 1; i >= 0; i--)
{
if (/* 条件 */)
{
list.RemoveAt(i);
}
}
2.使用List
点击查看代码
list.RemoveAll(item => /* 条件 */);
3.使用List
点击查看代码
foreach (var item in list.FindAll(x => /* 条件 */))
{
list.Remove(item);
}
4.使用List
点击查看代码
int index = list.FindIndex(x => /* 条件 */);
if (index != -1)
{
list.RemoveAt(index);
}
确保在删除元素时不要超出List的范围,否则会抛出ArgumentOutOfRangeException异常。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
2023-03-24 IntelliJ IDEA 2021永久激活 破解方案
2023-03-24 使用C#&.NET Core编程实现获取所有Windows服务列表及对Windows服务(Windows Service)的启动/停止/重启的方法
2022-03-24 在管道中,应用程序池有两种运行模式:集成模式和经典模式。
2022-03-24 IntelliJ IDEA 2020最新注册码(亲测有效,可激活至 2089 年) 下载安装,选择免费使用30天,拖入jar包,自动重启Idea
2022-03-24 Notepad++使用技法
2022-03-24 Base64解码、Base64编码、Base64加密解密规则
2022-03-24 Maven安装与配置 JDK Eclipse Maven程序包