小编Kev*_*ree的帖子

一旦结果不再更改,C#LINQ Aggregate方法是否完成执行?

我知道如果我在同一个语句中链接&&||运算符,c#将停止计算语句并在计算表达式时返回相应的结果,无论以下表达式是什么,结果都不会改变.例如:

var result = false && foo() && bar();
Run Code Online (Sandbox Code Playgroud)

在此语句中,由于第一个表达式为false foo(),bar()因此永远不会执行.我的问题是,Enumerable.Aggregate<TSource,?TAccumulate>当在一个bool列表上运行时会做同样的事情还是会评估所有表达式而不管?例如:

var result = new List<bool>
{
    false,
    foo(),
    bar()
}.Aggregate(true, (acc, x) => acc && x);
Run Code Online (Sandbox Code Playgroud)

c# linq

4
推荐指数
1
解决办法
374
查看次数

标签 统计

c# ×1

linq ×1