[C#]LINQ小例子
2015-10-17 17:28
417 查看
public class Test
{
public class student
{
public int id{get;set;}
public string name{get;set;}
}
static void Main(string[] args)
{
List<student> aList = new List<student>(){
new student{id = 1,name = "s1"},
new student{id = 2,name = "s2"},
new student{id = 3,name = "s3"}
};
List<student> bList = new List<student>(){
new student{id = 2,name = "s1"},
new student{id = 2,name = "s2"},
new student{id = 3}
};
var cList = (from c in bList select c.id).Distinct();
foreach(var s in cList)
{
Console.WriteLine(s);
}
System.Console.ReadKey();
}
}
输出:2 3
说明Distinct();, select
c.id, 从集合中取出c.id形成一个集合, 并用Distinct对这个集合去除重复项.
例子2:
输出:
2 s1
2 s2
说明: 在bList中搜索bList.id==2的项, 取出形成集合赋给cList.
例子3:
2 s2
3 s3
说明: 在aList中搜索aList.id==bList.id的项, 取出形成集合赋给cList.
{
public class student
{
public int id{get;set;}
public string name{get;set;}
}
static void Main(string[] args)
{
List<student> aList = new List<student>(){
new student{id = 1,name = "s1"},
new student{id = 2,name = "s2"},
new student{id = 3,name = "s3"}
};
List<student> bList = new List<student>(){
new student{id = 2,name = "s1"},
new student{id = 2,name = "s2"},
new student{id = 3}
};
var cList = (from c in bList select c.id).Distinct();
foreach(var s in cList)
{
Console.WriteLine(s);
}
System.Console.ReadKey();
}
}
输出:2 3
说明Distinct();, select
c.id, 从集合中取出c.id形成一个集合, 并用Distinct对这个集合去除重复项.
例子2:
var cList = (from c in bList where c.id == 2 select c); foreach (var s in cList) { Console.WriteLine(s.id + " " + s.name); }
输出:
2 s1
2 s2
说明: 在bList中搜索bList.id==2的项, 取出形成集合赋给cList.
例子3:
var cList = aList.Where(i => bList.Any(j => j.id == i.id));输出:
2 s2
3 s3
说明: 在aList中搜索aList.id==bList.id的项, 取出形成集合赋给cList.
相关文章推荐
- C#中字符串转换成二进制流
- (原创)c#学习笔记03--变量和表达式03--变量03--字面值
- (原创)c#学习笔记03--变量和表达式03--变量02--变量的命名
- C#中的 int? int??是什么意思
- c# 复制粘贴窗体
- (原创)c#学习笔记03--变量和表达式03--变量01--简单类型
- C#实现无边框窗体拖动
- (原创)c#学习笔记03--变量和表达式02--C#控制台应用程序的基本结构
- (原创)c#学习笔记03--变量和表达式01--c#的基本语法
- influxDB 0.9 C# 读写类
- C#中 委托和事件的关系
- C# Winform欢迎窗体实现()
- C## 输出Hello world
- c# 计时器的三种使用方法
- SuperSocket入门系列-01
- 一个简单的性能计数器:CodeTimer
- C#实现复杂XML的序列化与反序列化
- 文件和注册表操作(C#)
- C#打印技术(三)
- C#数字图像处理算法学习笔记(一)--C#图像处理的3中方法