C#4.0新特性学习(四)—匿名方法及Lambda表达式
2011-09-13 21:06
337 查看
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();
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();
相关文章推荐
- C#中新特性的学习:Delegate、匿名方法、lambda表达式
- 不能不说的C#特性-匿名方法和Lambda表达式
- C# 3.0 新特性 学习(二):匿名类型、扩展方法
- C#4.0 新特性 - 匿名方法,lambds
- C# 3.0 新特性 学习(二):匿名类型、扩展方法
- C#学习笔记18-匿名方法和Lambda表达式
- 委托学习笔记后续:泛型委托及委托中所涉及到匿名方法、Lambda表达式
- .net学习之新语法学习(匿名类和匿名方法,扩展方法,系统内置委托,Lambda表达式和linq等)
- C#特性之匿名方法和Lambda表达式
- C#特性 学习笔记(对象初始化器 匿名类型 扩展方法)
- .Net学习难点讨论系列10 - 匿名方法,Lambda表达式及其对局部变量的影响
- DotNet 3.0+ 新特性学习 之 匿名方法&Lambda表达式(Anonymous Method&Lambda Expression)
- .Net学习难点讨论系列10 - 匿名方法,Lambda表达式及其对局部变量的影响
- 学习系列之匿名方法与lambda表达式
- C#学习笔记-匿名方法和lambda表达式
- 不能不说的C#特性-匿名方法和Lambda表达式
- C#学习基本概念之匿名方法及Lambda表达式
- 委托是什么?匿名方法是什么?在C# 3.0中,Lambda表达式是什么?扩展方法是什么?LINQ是什么?您觉得C# 3.0中还有哪些重要的特性,它们带来了什么优势?BCL中哪些类库和这些特性有关?您平时最常用哪些
- C#学习日记25---匿名方法 与 Func委托 与 lambda表达式
- C#4.0新特性学习(二)—扩展方法