gpt4 book ai didi

c# - 使用前检查通用列表中的项目

转载 作者:太空狗 更新时间:2023-10-29 22:16:58 25 4
gpt4 key购买 nike

对于通用列表,检查具有特定条件的项目是否存在的最快方法是什么,如果存在,则选择它,而无需在列表中搜索两次:

例如:

if (list.Exists(item => item == ...))
{
item = list.Find(item => item == ...)
....
}

最佳答案

要么使用Find一次并将结果与​​ default(T) 进行比较,或者如果 default(T)可能是项目本身,使用 FindIndex 并检查索引是否为-1:

int index = list.FindIndex(x => x...);
if (index != -1)
{
var item = list[index];
// ...
}

如果您使用的是 .NET 3.5 或更高版本,则使用 LINQ 更为惯用 - 同样,如果 default(T)没问题,你可以使用类似的东西:

var item = list.FirstOrDefault(x => x....);
if (item != null)
{
...
}

使用 LINQ 可以让您从 List<T> 改变稍后在不更改代码的情况下添加到其他集合。

关于c# - 使用前检查通用列表中的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7894572/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com