演示代码1(最原始的写法):
Action<string> show = new Action<string>(Show);
show("tiana0");
static void Show(string strInput)
{
Console.WriteLine("Hello,{0}!", strInput);
}
演示代码2(使用匿名方法):
Action<string> show = new Action<string>(delegate(string strInput)
{
Console.WriteLine("Hello,{0}!", strInput);
});
show("tiana0");
演示代码3(使用匿名方法,且去掉“new Action<string>(...)”):
Action<string> show = delegate(string strInput)
{
Console.WriteLine("Hello,{0}!", strInput);
};
show("tiana0");
演示代码4(使用Lambda表达式):
Action<string> show = new Action<string>((strInput) =>
{
Console.WriteLine("Hello,{0}!", strInput);
});
show("tiana0");
演示代码5(使用Lambda表达式,且去掉“new Action<string>(...)”):
Action<string> show = (strInput)=>
{
Console.WriteLine("Hello,{0}!", strInput);
};
show("tiana0");
可见,Lambda表达式本质上就是委托。
使用Lambda表达式可以简化我们的代码,这一点在LINQ中被充分的体现。
查看IL代码,你会发现,几种写法生成的中间代码一致。
本文通过五种不同方式展示了如何在C#中使用Lambda表达式来简化代码,包括原始方法、匿名方法及Lambda表达式的多种书写形式,并强调了其在LINQ中的应用。

被折叠的 条评论
为什么被折叠?



