lambda表达式

参考学习地址:

https://msdn.microsoft.com/zh-cn/library/bb397687.aspx

            int[] i = { 1, 2,5 };
     
            int h = i.Count(n=> { return n % 2 == 0; });
            int g = i.Count(n=>n%2==0);//等效

n=>{return n%2==0;}  这种是语句lambda,可以写多行处理语句,用return返回;

n=n%2==0 是表达式lambda,是一个表达式,系统可以推断返回类型;

n是参数,没有参数时用() => SomeMethod();

仅当 lambda 只有一个输入参数时,括号才是可选的;否则括号是必需的。 括号内的两个或更多输入参数使用逗号加以分隔:

有时,编译器难以或无法推断输入类型。 如果出现这种情况,你可以按以下示例中所示方式显式指定类型:

(int x, string s) => s.Length > x

原文地址:https://www.cnblogs.com/longling2344/p/5769712.html