Linq的三个用法
针对LINQ设计的扩展方法大多应用了泛型委托,system命名空间定义了泛型委托Action、Func和Predicate,可以这样理解这三个委托,Action用于执行一个操作,所以它没有返回值,Func用于执行一个操作并返回值,Predicate用于定义一组条件并判断是否符合条件。select扩展方法接收的就是有个Func委托,Lambda表达式其实就是一个简洁的委托,运算符“=>”左边代表的是方法的参数,右边的是方法体。
select返回执行完方法体的的返回值,where判断该参数是否满足某个条件,满足则返回该类型,否则不返回当前类型,OfType<obj>挑选工具,也用于转换。