摘要: 与linq to sql类似,所有继承了IEnumerable的类型均可使用LINQ,如下string[]数组基类为Array,而Array实现了IEnumerable,所以也可使用linqstatic void Main(string[] args) { string[] myWords = new string[] { "what", "is", "your", "name", "my", "name", "is" }; var obj = from 阅读全文
posted @ 2013-04-24 17:33 赶路人之刚出发 阅读(114) 评论(0) 推荐(0) 编辑
摘要: yield return 用以生成IEnumerable类型的结果集,如下例所示,当第15行之行时,函数MyWhere并不会执行,而当第18行之行时会从第5行开始执行,在找到第一个偶数2时,函数MyWhere返回,执行第18行打印数字2,然后再调用第5行找到第二个偶数4,MyWhere又返回,继续执行第18行打印数字4。当执行到第22行时,函数MyWhere又会重新一次一次的执行。MyWhere是为IEnumerable<T>类型定义的一个扩展方法,比如List<int>就是实现了IEnumerable的泛型方法,即可自动调用MyWhere这个扩展方法。Func< 阅读全文
posted @ 2013-04-24 17:17 赶路人之刚出发 阅读(197) 评论(0) 推荐(0) 编辑
摘要: Lamda表达式:delegate int MyAdd(int i); delegate int Dosome(); static void Main(string[] args) { MyAdd myAdd; //隐试声明一个参数,表达式方法体 myAdd= x => x + 1; //显示声明一个参数,表达式方法体 myAdd = (int x) => x + 1; //显示声明一个参数,多语句方法体 ... 阅读全文
posted @ 2013-04-24 16:44 赶路人之刚出发 阅读(547) 评论(0) 推荐(0) 编辑