我有一份清单如下:
List<List <T> > userList
Class T { string uniqueidentifier, string param2, int param2}
我有一个uniqueidentifier,我需要在列表中找到具有相同'uniqueidentifier'值的元素T.
我可以使用两个'foreach'循环来完成它.这似乎不是很好的做事方式.我想应该有一些像"查找"这样的内置方法可以做同样的事情并且经过高度优化.
cdh*_*wie 13
Find根本没有优化 - 它执行线性搜索,因为这是在未排序列表上唯一有意义的事情.如果你正在寻找一种更好的方法来编写它,你可以使用LINQ:
var element = (from sublist in userList
from item in sublist
where item.uniqueidentifier == someid
select item).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)