定义lambda表达式。
方法的组成,参数列表,返回值,方法名,方法体
func<>方法类型,函数类型,第一个类型是参数1的类型,第二个类型是参数2的类型,还可写多个类型,但最后一个类型是返回值的类型。
f1变量名,(a,b)是参数类型,=>是表达式,{ }是方法体,有返回值的时候加return关键字
Func<int ,int,int>f1=(a,b)=>{return a+b}; Console.WriteLine(f1(10,20));//可以通过变量名调用函数其他的接收lambda表达式写法
使用Action<>
接收无返回值lambda表达式,如果一个参数可以()不写,如果函数体只有一句话可以把{ }省略
Action<string>f2=(a)=>Console.WriteLine(a); f2("hello");使用Predicate<>
接收返回bool类型的lambda表达式
Predicate<int>f3=a=>a%2==0; console.writeline(f3(3));//false func<int,bool>f4=a=>a%2=0; console.writeline(f4(2));//true小结
func<参数类型,参数类型,……,返回值类型>f1=(a,b)=>{retuen a+b}
可以接受有返回值的lambda表达式,参数个数没有限制,惭悔之的类型也没有限制
Action<string>f2=a=>Console.WriteLine(a);只能接收无返回值lambda表达式
Predicate<int> f3 = a => a % 2 == 0;只能接收返回值bool类型的lambda表达式
遍历
//第一种遍历 for (int i = 0; i < ss.Length; i++) { Console.WriteLine(ss[i] + "--111"); } //第二种遍历 foreach (var item in ss) { Console.WriteLine(item + "--222"); } //第三种遍历 Array.ForEach(ss, v => Console.WriteLine(v + "--333"));