现在的位置: 首页 > 综合 > 正文

C#4.0新特性学习(四)—匿名方法及Lambda表达式

2013年02月16日 ⁄ 综合 ⁄ 共 430字 ⁄ 字号 评论关闭

C#从3.0开始支持匿名方法及Lambda表达式。

1 匿名方法

 AddDelegate del = delegate(int i, int j)
 {
     return i + j;
 };
 Console.WriteLine(del(5, 6));

使用匿名方法,要注意其语法特性。

2 Lambda表达式

可以使用Lambda表达式进一步简化上面的代码:
 AddDelegate d = (i, j) => {return i + j; };
 Console.WriteLine(d(5, 6));
 其中,参数i,j类型可以省略,编译器会自动推断。

可以结合泛型委托使用Lambda表达式,如:

 Func<int, int, int> func = (i, j) => { return i + j; };
 Console.WriteLine(func(5,6));

 如果没有输入参数时,可以直接写(),如:
 Action action = () => { Console.WriteLine("Hello,World!"); };
 action();

抱歉!评论已关闭.