我見過的.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