这个语法可以做一些复杂的聚合运算,例如累计求和,累计求乘积。它接受2个参数,一般第一个参数是称为累积数(默认情况下等于第一个值),而第二个代表了下一个值。

第一次计算之后,计算的结果会替换掉第一个参数,继续参与下一次计算。

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Text;  
  5. using System.Threading.Tasks;  
  6.   
  7. namespace LinqTestConsole  
  8. {  
  9.     class Program  
  10.     {  
  11.         static void Main(string[] args)  
  12.         {  
  13.             string[] arr = {"a","b","c","d","e","f","g" };  
  14.             int[] arrInt = { 1,2,3,4,56,23 };  
  15.   
  16.               
  17.             //string.Join()  
  18.             Console.WriteLine("---------string.Join()拼接数组:");  
  19.             Console.WriteLine(string.Join("-", arr));  
  20.   
  21.             //Linq的Aggregate拼接字符串  
  22.             Console.WriteLine("---------Linq的Aggregate拼接数组:");  
  23.             Console.WriteLine(arr.Aggregate((all, next) => { return all +"-"+ next; }));  
  24.   
  25.             //Linq的Aggregate拼接int数组合  
  26.             Console.WriteLine("---------Linq的Aggregate拼接Int数组:");  
  27.             Console.WriteLine(arrInt.Aggregate((all, next) => { return all + next; }));  
  28.   
  29.             Console.Read();  
  30.         }  
  31.     }  
  32. }  

运行结果:


本文转载:CSDN博客