what
一、定义
Lambda 表达式是一种可用于创建 委托 或 表达式目录树 类型的 匿名函数 。通过使用 lambda 表达式,可以写入可作为参数传递或作为函数调用值返回的本地函数。(微软)
理解
1.Lambda表达式是一种匿名方法。
匿名方法可省略参数列表,Lambda表达式不能省略参数列表的圆括号()
//只需要使用一个delegate关键字,加上作为方法的操作使用的代码块。
Action printer = delegate { Console.WriteLine("Hello world"); };
printer();
//一个没有参数的方法,返回值的类型不用指定 系统会自动判断
() => Console.WriteLine()
二、发展
委托 → 匿名方法 → lambda表达式 → 泛型委托 → 表达式树
//委托分3步//step01:用delegate定义一个委托
public delegate int deleFun(int x,inty);//step02:声明一个方法来对应委托
public static int Add(int x, inty)
{return x +y;
}static void Main(string[] args)
{//step03:用这个方法来实例化这个委托
deleFun dFun = newdeleFun(Add);
Console.WriteLine(dFun.Invoke(5, 6));
}
//匿名方法分2步//step01:用delegate定义一个委托