C#基础--Lambda和LINQ

C#基础–Lambda 和 LINQ

一、Lambda 的前世今生

在.NetFramewok的不同版本都有不同的样子;在.NetCore下也都是支持的;

1.1 .Netframework1.0/1.1时代

public delegate void NoReturnWithPara(int x, string y);

NoReturnWithPara method = new NoReturnWithPara(Study);
method.Invoke(123, "Richard");

private void Study(int id, string name)
{
    Console.WriteLine($"{id} {name} 学习.Net高级班");
}

1.2 .NetFramework2.0

匿名方法 增加了一个delegate关键字, 可以访问到除了参数以外的局部变量

public delegate void NoReturnWithPara(int x, string y);

int i =0;
NoReturnWithPara method = new NoReturnWithPara(delegate (int id, string name)
{
	Console.WriteLine($"{id} {name} 学习.Net高级班");
	Console.WriteLine(i);	//可以访问到除了参数以外的局部变量 i
});
method.Invoke(123, "Richard");

你可能感兴趣的:(C#,.Net,c#,linq)