Lambda表达式
Lambda表达式其实可以看做是作为委托的参数的匿名函数。
怎么理解呢?
首先,我们定义一个委托类型:
//定义委托类型 public delegate int AddDel(int a,int b);
然后,在类中实现一个Add的方法:
static int Add(int i, int j) { return i + j; }
最后,我们一步一步实例化这个委托,最后形成Lambda表达式格式:
//传统委托变量实例的定义,指向一个方法(方法签名必须符合委托类型) AddDel addDel1 = new AddDel(Add); //匿名函数定义 AddDel addFun = delegate(int a, int b) { return a + b; }; //Lambda AddDel addLambda1=(int a,int b)=>{return a+b;}; //简化后的Lambda AddDel addLambda2=(a,b)=>{ return a+b;}; //再次简化的Lambda AddDel addLambda3 = (a, b) => a + b;