如何处理 List.First 在 c#中没有匹配项案件
答案:1 悬赏:60 手机版
解决时间 2021-01-03 19:49
- 提问者网友:原来太熟悉了会陌生
- 2021-01-03 08:47
如何处理 List.First 在 c#中没有匹配项案件
最佳答案
- 五星知识达人网友:玩世
- 2021-01-03 09:42
List.Find() 本质还是循环遍历,不过它用了一层委托来包装。
我们可以看 MSDN 官方对于 List.Find() 的定义:
【当前 List 的元素被逐个传递给 Predicate 委托,并在 List 中向前移动,从第一个元素开始,到最后一个元素结束。当找到匹配项时处理即停止。】
这样一来,如果集合很小,foreach 效率略微高一些;而如果集合很大,比如有十万行甚至更多行数据,Find() 委托会更快,且随着数据量增多后明显的更高效。
而 List.FindAll() 的效率在集合很小时,明显的不如 foreach 效率;随着集合变大后,效率会慢慢变高,但不会比 foreach 更高效。
我们可以看 MSDN 官方对于 List
【当前 List
这样一来,如果集合很小,foreach 效率略微高一些;而如果集合很大,比如有十万行甚至更多行数据,Find() 委托会更快,且随着数据量增多后明显的更高效。
而 List
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯