-1

这些代码对于查找表达式的第一个结果是否返回相同的结果?

        bool daily = false;
        lstDep.ForEach(d => daily = d.DailyAmount < transferedAmount ? true : false);
        lstDep.ForEach(delegate(DepositRoleModel d)
        {
            daily = d.DailyAmount < transferedAmount ? true : false;
        }
            );

如何打破 foreach 以获得第一个真实结果?

4

2 回答 2

2

您不需要“打破 Foreach”,而是使用.Any()

bool daily = lstDep.Any(d => d.DailyAmount < transferedAmount);
于 2013-02-23T07:31:03.920 回答
1

您可以改用此查询:

bool daily = lstDep.Any(d=>d.DailyAmount < transferedAmount)

它会比您的查询更快地工作。这段代码相当于:

bool daily;

foreach(var d in lstDep)
{
    daily = d.DailyAmount < transferedAmount;
    if(daily)
        break;
}
于 2013-02-23T07:31:09.877 回答