Widziałem prosty przykład .NET funkcji Łącznej działa tak:LINQ kruszywa typy złożone w ciąg
string[] words = { "one", "two", "three" };
var res = words.Aggregate((current, next) => current + ", " + next);
Console.WriteLine(res);
Jak mógłby funkcja „agregat” być stosowane, jeżeli chcesz agregować bardziej złożone typy? Na przykład: klasa 2 własności, takich jak „klucz” i „wartości” i chcesz wyjście tak:
"MyAge: 33, MyHeight: 1.75, MyWeight:90"
Idealne, właśnie to, czego szukałem, więc mogłem je wszystkie odmierzać, od czasu, toczenie własnych pętli było szybsze (w teście mam tylko 1 lub 2 przedmioty) – Myster
Z tak małą liczbą pozycji na liście , wydajność wykonania konfiguracji "dodatkowych" modułów wyliczających dla Select/Aggregate wydaje się dość surowa w porównaniu z bardziej imperatywnym rozwiązaniem. Podobnie jak w przypadku większości rozwiązań funkcjonalnych, pytanie brzmi, czy kompromis w zakresie wydajności/czytelności jest akceptowalny. Biorąc pod uwagę, jak nieznany byłby Aggregate większości ludzi, łatwo byłoby stwierdzić, że w tym przypadku imperatywne rozwiązanie jest "lepsze" niezależnie od wydajności. – dahlbyk
Po napisaniu go w obie strony, zgadzam się. The Aggregate jest dość tajemniczy, ale jest dobrym narzędziem do umieszczenia w moim pudełku ;-) – Myster