1、匿名方法转换为Lambda表达式步骤
- 删除delegate关键字
- 在参数列表和匿名方法主题之间方lambda运算符=>。
MyDel del = delegate(int x){ return x+1;} //匿名方法
MyDel del = (int x) => { return x+1;} //Lambda表达式
2、进一步转化
- 编译器可以丛委托的申明中知道委托参数的类型,因此可以省略参数类型。
- 带有类型的参数列表称为显示类型
- 省略类型的参数列表称为隐示类型
- 如果只有一个隐式类型参数,可以省略周围的圆括号
- lambda表达式允许表达式的主体是语句块或表达式
3、lambda表达式参数要点
- lambda表达式参数列表中的参数必须在参数数量、参数类型和位置上与委托相匹配。
- lambda表达式的参数列表中的参数不一定需要包含类型,除非委托有ref或out参数。
- 如果只有一个参数,并且是隐式参数,周围的圆括号可以省略。
- 如果没有参数必须使用一组空的圆括号。
4、lambda表达式的语法