有一个 List<string> paths = new List<string>();
,我想删除不确定是否存在的某个项目。我应该检查它是否存在,还是直接运行Remove方法?
在运行paths.Remove(stringVar)
之前,是否需要使用if(paths.Exists(stringVar))
或被认为是一种良好的做法?
如果列表中没有这样的项,运行Remove而不进行Exists检查将简单地返回false。
有一个 List<string> paths = new List<string>();
,我想删除不确定是否存在的某个项目。我应该检查它是否存在,还是直接运行Remove方法?
在运行paths.Remove(stringVar)
之前,是否需要使用if(paths.Exists(stringVar))
或被认为是一种良好的做法?
如果列表中没有这样的项,运行Remove而不进行Exists检查将简单地返回false。
它不会抛出异常,也不需要额外的检查。请查看MSDN:
如果成功删除了项,则返回 true;否则返回 false。如果列表中没有找到该项,该方法也会返回 false。
不要进行检查。因为Remove
已经进行了检查。你额外的检查是多余的,没有任何好处。