Lambda 表达式是一种可用于创建委托或表达式目录树的匿名函数
Lambda图解
Lambda用法
() => {表达式/方法体};//空参数
x => x*2; //一个参数,表达式为一句,x为参数,返回x*2
(x,y,z) => x+y+z; //多个参数
(int x,string y) = x+y; //显式声明参数类型
lambda结合委托使用
namespace ConsoleApp2
{
class Program
{
static void Main(string[] args)
{
Dele dele = () => { Console.WriteLine("没有参数的委托"); };
Dele2 dele2 = p1 => Console.WriteLine("一个参数p1可以不加(),方法体一句话可以不加{}");
Dele3 dele3 = (p1, p2, p3) => Console.WriteLine("多个参数");
dele();
dele2("");
dele3("", 11, 22.2);
//=>后面的表达式直接返回,简略了return
Func<int, int> func = x => x * 3;
int i = func(10);
Console.WriteLine(i);//30
}
}
delegate void Dele();//无参数的委托
delegate void Dele2(string a);//有一个参数的委托
delegate void Dele3(string a, int b, double c);//多个参数的委托
}