我见过的.NET聚合函数的简单示例工作就像这样:LINQ的聚集体复合类型为字符串
string[] words = { "one", "two", "three" };
var res = words.Aggregate((current, next) => current + ", " + next);
Console.WriteLine(res);
怎么可能,如果你想聚合更多复杂“汇总”功能使用类型? 例如:有2种性能如“键”和“值”和在类所需的输出是这样的:
"MyAge: 33, MyHeight: 1.75, MyWeight:90"
完美的,就在我期待的位置,所以我可以从他们的时间开始计时,滚动自己的圈子更快(我的测试周期中只有1或2个项目) – Myster 2009-10-04 21:08:57
列表中的项目很少,与更迫切的解决方案相比,为Select/Aggregate设置“额外”枚举器所带来的性能似乎相当严重。与大多数功能解决方案一样,问题在于性能/可读性折衷是否可以接受。鉴于不熟悉的Aggregate对于大多数人而言是多么的容易,很容易得出结论:在这种情况下,必要的解决方案是独立于性能的“更好”。 – dahlbyk 2009-10-05 01:32:50
写完之后,我同意。 Aggregate是相当神秘的,但它是一个很好的工具,在我的箱子里;-) – Myster 2009-10-07 21:01:42