Lambda表达式的本质是:匿名函数
Lambda表达式:
(input paramters) => expression;
1、当只有一个参数时,括号可以省略:
如:
x = x*x;
如果没有参数,或者参数多于1个,则口号不能省略
如:
(x,y) => x+y;
()=> method();
2、当Lambda表达式有多个语句时,使用{}
如:
n => {string str = n++ + " 个"; Console.WriteLine(str);};
3、Lambda表达式常配合LINQ语句使用
如:
FilteredElementCollector fillPatternFilter = new FilteredElementCollector(doc);
fillPatternFilter.OfClass(typeof(FillPatternElement));
FillPatternElement fpe = fillPatternFilter.First(m => (m.as FillPatternElement).GetFillPattern().IsSolidFill) as FillPatternElement
简单的例子:
IList<string> citys = new List<string>{
"Yantai","Dalian","Shanghai","Beijing"
};
var result = citys.First(city => city.Length > 6));
简单说明LINQ查询操作符
方便用户操作集合对象的一些扩展方法;
比如:
Where,Max,Select,Sum,Any,Average,All,Concat等
都是针对IEnumerable的对象进行扩展的,也就是说,只要实现了IEnumerable接口,就可以使用这些扩展方法