LinQ to Object
2012-04-20 21:00
309 查看
今天我们学习了很多内容,不过全是基础,所以听起来不怎么费力呢
今天的练习主要写了:
排列:orderby orderbydescending (升序降序) thenby thenbydescending(当需要用thenby排序时,必须要有orderby的参与)
聚合:count ,avg,max,min(今天主要举这些例子了)
集合:交集(intersect),并集(union),差集(Except),(distinct)移除重复项
元素操作:
ElementAt :按索引返回某一个元素(不懂这个)
ElementAtOrDefault:按索引返回某一个元素,如果没有的话,就返回默认值
First:返回集合中的每一个元素或满足条件的第一个元素
FirstOfDefault:返回集合中的每一个元素或满足条件的第一个元素,如果不存在,就返回默认值
Single:返回集合中的唯一元素或者是满足条件的某个元素
SingleOfDefault:返回集合中的唯一元素或者是满足条件的某个元素,如果不存在,返回默认值
分区函数:
Skip:跳过(输出后面的元素)
Take:取
SkipWhile:只要不满足条件就停止跳过
TakeWhile:(这个不知道怎么说,明天懂了在说哈)
联接查询:
join GroupJoin selectMany(这个也不好说)
View Code
今天的练习主要写了:
排列:orderby orderbydescending (升序降序) thenby thenbydescending(当需要用thenby排序时,必须要有orderby的参与)
聚合:count ,avg,max,min(今天主要举这些例子了)
集合:交集(intersect),并集(union),差集(Except),(distinct)移除重复项
元素操作:
ElementAt :按索引返回某一个元素(不懂这个)
ElementAtOrDefault:按索引返回某一个元素,如果没有的话,就返回默认值
First:返回集合中的每一个元素或满足条件的第一个元素
FirstOfDefault:返回集合中的每一个元素或满足条件的第一个元素,如果不存在,就返回默认值
Single:返回集合中的唯一元素或者是满足条件的某个元素
SingleOfDefault:返回集合中的唯一元素或者是满足条件的某个元素,如果不存在,返回默认值
分区函数:
Skip:跳过(输出后面的元素)
Take:取
SkipWhile:只要不满足条件就停止跳过
TakeWhile:(这个不知道怎么说,明天懂了在说哈)
联接查询:
join GroupJoin selectMany(这个也不好说)
View Code
using System; using System.Collections.Generic; using System.Text; using T2; using System.Linq; using System.Collections; namespace T1 { delegate void MyDelegate1 (int a); delegate int MyDelegate2 (int a); class Program { static void Main(string[] args) { //var i = 100;//推断类型:类型是确定,声明的时候必须初始化 //var s = "hello world"; //Console.WriteLine(s.ToFirstUpper()); //Console.WriteLine(s.ToMyString("小蜜")); //MyDelegate1 md1 = delegate(int a) { Console.WriteLine("hello world"); };// 定义匿名方法,必须使用委托变量保存,匿名方法的方法名都是delegate //md1(2); ////lambda表达式:就是一个匿名方法的简写形式 ////-()表示输入的参数列表; => 读goes to {}表示方法体 ////1、表达式中的参数列表可以省略数据类型 ////2、当参数列表中只有一个参数时,可以省略(),其他情况都不能省略 ////3、当方法体中只有一条语句,并且该语句是return 语句时。可以省略{},并且同时必须省略return关键字 //MyDelegate1 md2= (int a) => { Console.WriteLine("Hello world"); }; //MyDelegate1 md3 = (a) => { Console.WriteLine("Hello world"); }; //MyDelegate1 md4 = a => { Console.WriteLine("Hello world"); }; //MyDelegate1 md5 = a => a = a * 100; //MyDelegate2 md6 = a => { return a * 1000; }; //var d = md6(23); //Console.WriteLine(d); ////匿名类:没有名字的类,主要用作临时传递数据 //var x = new { Name="zhangsan",Age=18,Score=54}; //Console.WriteLine(x.Age); //实现了IQueryAble<T>接口或者IEnumerable<T>接口的对象才能使用linq int[] ss = { 5,6,34,23,12,25,78,43}; //语法查询 //var s=from a in ss // where a>10 // select a; //方法查询:使用Where进行过滤 var s= ss.Where(a => a > 10); foreach (var x in s) { Console.WriteLine(x); } //投影:就是根据数据转换成你需要的数据 var s1 = ss.Select(a=>a*100); foreach (var x in s1) { Console.WriteLine(x); } var s2 = ss.Where(a => a > 10).Select(a => "成绩是:" + a); foreach (var x in s2) { Console.WriteLine(x); } var s3 = ss.Select(a => new {name="张三",Age=a }); foreach (var x in s3) { Console.WriteLine(x.name+"的年龄是:"+x.Age); } var s4 = ss.Count(a => a > 50); Console.WriteLine(s4); ArrayList list = new ArrayList{ new Student(){Name="小蜜",Score=70}, new Student(){Name="洋葱",Score=90}, new Student(){Name="西瓜",Score=54}, new Student(){Name="脑残",Score=48}, new Student(){Name="阿木",Score=88}, new Student(){Name="杨桃",Score=65} }; var s5 = list.Cast<Student>().Where(a => a.Score >= 60); foreach (var x in s5) { Console.WriteLine(x.Name + "的成绩是:" + x.Score); } } //static void FF() //{ // Console.WriteLine("hello world"); //} } class Student { public string Name { get; set; } public int Score { get; set; } } }
相关文章推荐
- Visual Studio 2008之新特性LINQ(三)之LINQ To Object查询
- Linq To Object
- Linq To Object实例之过滤字符集 推荐
- LINQ to Object(集运算符与JOIN)
- LINQ to Object的一个例子
- LINQ TO OBJECT
- LINQ初体验之LINQ to Object
- Linq to Object
- LINQ&EF任我行(二)--LinQ to Object
- Linq To Object 查询语句示例
- (第一篇) 一步一步带你了解linq to Object
- Linq 学习笔记之 linq to object
- linq to object 未完待续
- LINQ to OBJECT函数积累
- LinQ To Object 基本用法
- Linq to EF 与Linq to Object 使用心得
- linq入门学习 linq to object
- .NET面试题系列[13] - LINQ to Object
- LinQ to Object --- 有关于Dictionary、SQL(LEFT OUTER JOIN \ Group OrderBy Sum) 操作
- .NET编程(03)Lambda&Linq(to object)