应该List <T> .Remove前面有List <T> .Exists吗?

yos*_*osh 16 .net c# generics list

List<string> paths = new List<string>();我要删除我不知道项目是存在的.我应该检查它是否存在或者直接运行Remove方法吗?

if (paths.Exists(stringVar))以前是需要还是被认为是一种好习惯paths.Remove(stringVar)

如果列表中没有此类项,则运行Remove without Exists将返回false.

Sae*_*iri 23

不,它不会抛出异常,也不需要额外检查.见MSDN:

如果项目已成功删除,则为true; 否则,错误.如果在List中找不到项,则此方法也返回false.


Dan*_*rth 10

不,不要检查.因为Remove已经做了检查.您的额外支票简直是多余的,没有任何好处.