Dan*_*elG 5 c# performance enumeration
请考虑以下代码示例:
IEnumerable<Y> myEnumeration = *some linq stuff into a datatable*
If (myEnumeration.Count() > X)
{
foreach(Y bla in myEnumeration)
{
// do something
}
}
Run Code Online (Sandbox Code Playgroud)
这会导致2次枚举吗?伯爵 - 召唤+ foreach?如果是这样,有没有办法避免其中一个枚举?
提前致谢
编辑myEnumeration.Count - > myEnumeration.Count()(扩展方法)
如果它Count不是一个属性,而是一个方法Enumerable.Count(正如我所期望的那样)。在这种情况下,我建议预先将其放入列表中:
List<Y> myList = *some linq stuff into a datatable*.ToList();
if (myList.Count > X)
foreach (Y bla in myList)
//do something
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
183 次 |
| 最近记录: |