【发布时间】:2023-04-01 14:46:01
【问题描述】:
拥有List<string> paths = new List<string>(); 我想删除我不确定是否存在的项目。我应该检查它是否存在还是直接运行 Remove 方法?
if (paths.Exists(stringVar)) 在paths.Remove(stringVar) 之前是否需要或被认为是一种好的做法?
在不存在的情况下运行 Remove 只会返回 false,以防列表中没有此类项目。
【问题讨论】:
-
它不会抛出异常,尽管在删除项目之前检查是否存在总是一个好习惯。它不会伤害:)
-
@Devjosh:这是不必要的,并且会在具有大列表的性能关键情况下受到伤害,因为通过额外的检查,列表被遍历两次而不是一次。
-
@daniel 谢谢我不知道删除方法的默认行为