鉴于:
foreach (var obj in _data)
{
maxRows++;
foreach (var param in obj.Parameters)
maxRows++;
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试将其转换为(最好)单个语句.不是出于任何原因,特别好奇,如果它很容易在精神上解析,如果可能的话.
_data.ForEach(feObj => maxRows++);
_data.ForEach(feObj => feObj.Parameters.ForEach(feParam => maxRows++));
Run Code Online (Sandbox Code Playgroud)
这似乎完成了同样的事情,尽管由于在额外的时间内迭代_data,它似乎效率低于原始效果.
有没有办法将两个单独行中的两个动作合并为一个声明?
Rob*_*Rob 10
你可以拿出总和:
maxRows += _data.Sum(obj => 1 + obj.Parameters.Count())
Run Code Online (Sandbox Code Playgroud)