求和时排除数组中元素的最简洁方法是什么?
例:
array.sum(exclude index 5);
Run Code Online (Sandbox Code Playgroud)
而不是尝试构建临时数组或跳过该值,array[5]从总和中减去值可能更快:
array.Sum() - array[5]
Run Code Online (Sandbox Code Playgroud)
如果您坚持使用LINQ,那么您可以使用Take和Skip.假设要忽略索引5处的项目,则需要索引0-4处的值,因此您获取前5个项目,然后使用第5个索引之后的项目进行连接,因此您跳过前6个项目.
array.Take(5).Concat(array.Skip(6)).Sum();
Run Code Online (Sandbox Code Playgroud)
更好的解决方案,正如Matt Burland在评论中指出的那样,Mike Christensen在他的回答中指出,是将整个列表相加并简单地减去你想忽略的单个值.
| 归档时间: |
|
| 查看次数: |
1211 次 |
| 最近记录: |