假设我有一个列表或项目数组,我想总结列表中的项目的子集.(就我而言,它恰好总是一个连续的子集).
这是老式的方式:
int sum = 0;
for(int i = startIndex; i <= stopIndex; i++)
sum += myList[i].TheValue;
return sum;
获得该代码的最佳方法是什么?
myList.Skip(startIndex).Take(stopIndex - startIndex + 1).Sum(x => x.TheValue);
Run Code Online (Sandbox Code Playgroud)
如果我在做这样的事情很多,我会定义一个帮手TakeRange,涵盖了Skip和Take让我没有关闭的情况的一个吧.
| 归档时间: |
|
| 查看次数: |
326 次 |
| 最近记录: |