c# - 检查 IEnumerable Count 是否大于零而不遍历所有记录的最快方法是什么

标签 c# ienumerable

我知道每个人都说要避免做这样的事情,因为它很慢(只是为了找出是否有 0)

  IEnumerable<MyObject> list;
  if (list.Count() > 0)
  { 
  }

但是当我需要做的就是找出列表的计数是否为 0 或其中是否有项目时,最好的选择是什么

最佳答案

使用 list.Any()。如果找到一个元素,它会返回 true。在实现方面,它将是:

using (var enumerator = list.GetEnumerator())
{
  return enumerator.MoveNext();
}

关于c# - 检查 IEnumerable Count 是否大于零而不遍历所有记录的最快方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5838299/

相关文章:

c# - IEnumerable.MoveNext() 返回 True 但 IEnumerable.Current 引发 System.NullReferenceException

c# - 从可枚举的内容构建 C# 列表

时间:2019-03-17 标签:c#Reflectionobject[]issue

c# - LINQ:在 GridView 中查找所有选中的复选框

c# - 如何设置 SMO ScriptingOptions 以保证表的精确副本?

c# - 使 C# 控制台应用程序识别 .exe.config 文件中手动编辑的更改

c# - 以 IEnumerable<T> 序列作为参数调用方法,如果该序列不为空

c# - 如何将 ienumerable 集合附加到 C# 中的现有列表

c# - C#中的算术运算

c# - 将字典从 <Parent, IEnumerable<Child>> 反转为 <Child, IEnumerable<Parent>>