C# Linq 常用查询操作符
限定操作:
1. All:用来确定是否序列中的所有元素都满足条件
2. Any:用来确定序列是否包含任何元素,有参方式用来确定序列中是否有元素满足条件
3. Contains:方法用来确定序列是否包含满足指定条件的元素
排序:
1. OrderBy:将序列中的元素按照升序排列
2. ThenBy:实现按照次关键字对序列进行升序排列(二级排序)
3. OrderByDescending:将序列中的元素按照降序排列
4. ThenByDescending:实现按照次关键字对序列进行降序排列(二级排序)
5. Reverse:对集合反向排序
分区操作:
1. Skip:跳过集合的前n个元素
2. SkipWhile:直到某一条件成立就停止跳过
3. Take:获取集合的前n个元素
4. TakeWhile:直到某一条件成立就停止获取
聚合操作:
1. Aggregate:对集合值执行自定义聚合运算。例如:把所有值按某个符号间隔输出
2. Average:求集合中元素的平均值,返回值类型double
3. Count:求集合中元素的个数,返回值类型Int32
4. LongCount:求集合中元素的个数,返回值类型Int64
5. Max:求集合中元素的最大值
6. Min:求集合中元素的最小值
7. Sum:求集合中元素的和
集合操作:
1. Distinct:过滤集合中的相同项
2. Union:连接不同集合,自动过滤相同项
3. Concat:连接不同集合,不会自动过滤相同项
4. Intersect:获取不同集合的相同项(交集)
5. Except:从某集合中删除其与另一个集合中相同的项
6. SequenceEqual:判断两个序列是否相等。相等,返回true,否则返回false
元素操作符:
1. Single:返回序列中的唯一一条记录,如果没有或返回多条,则引发异常
2. SingleOrDefault:返回序列中的唯一一条记录,如果序列中不包含任何记录,则返回默认值,如果返回多条,则引发异常
3. First:取序列中满足条件的第一个元素,如果没有元素满足条件,则抛出异常
4. FirstOrDefault:取序列中满足条件的第一个元素,如果没有元素满足条件,则返回默认值(null)
5. ElementAt:返回序列中指定索引处的元素。如果索引超出范围会导致异常
6. ElementAtOrDefault:返回序列中指定索引处的元素;如果索引超出范围,则返回默认值
生成操作:
1. Empty:将返回一个指定类型的空集合,例:var str = Enumerable.Empty<string>();
2. DefaultIfEmpty:将空集合替换为具有默认值的单一实例集合。DefaultIfEmpty方法需要两个参数,第一个参数是一个泛型集合,第二个参数是相应类型的单个元素,如果第一个参数中不含有任何元素,它将返回第二个参数指定的单个元素
3. Range:用于生成指定范围内的整数的序列,例:var temp = Enumerable.Range(0, 10);
4. Repeat:用于生成包含一个重复值的集合,例:var temp = Enumerable.Repeat(0, 10);
C# Linq 常用查询操作符的更多相关文章
- LINQ标准查询操作符(三)——Aggregate、Average、Distinct、Except、Intersect、Union、Empty、DefaultIfEmpty、Range、Repeat
七.聚合操作符 聚合函数将在序列上执行特定的计算,并返回单个值,如计算给定序列平均值.最大值等.共有7种LINQ聚合查询操作符:Aggregate.Average.Count.LongCount.Ma ...
- Linq 标准查询操作符三
本文介绍了LINQ标准查询操作符.没有这些操作符,LINQ就不会存在.本文为理解这些操作符的功能提供了很好的基础.了解它们将会很有帮助,因为LINQ的各种Provider都是基于这些操作符来完成各自丰 ...
- LINQ 标准查询操作符
本文介绍了LINQ标准查询操作符.没有这些操作符,LINQ就不会存在.本文为理解这些操作符的功能提供了很好的基础.了解它们将会很有帮助,因为LINQ的各种Provider都是基于这些操作符来完成各自丰 ...
- LINQ标准查询操作符详解(转)
一. 关于LINQ LINQ 英文全称是“Language-Integrated Query”,中文为“语言集成查询”,它是微软首席架构师.Delphi 之父和C# 之父——Anders ...
- 【LINQ标准查询操作符总结】之聚合操符
C# 中的LINQ 提供了两种操作方式,查询表达式和查询操作符,所有的查询表达式都有对应的查操作符类替代,查询表达式有点“类” SQL,在代码中写SQL,总觉得不够“优雅”,使用查询操作符就显得“优 ...
- LinQ实战学习笔记(四) LINQ to Object, 常用查询操作符
这一篇介绍了下面的内容: 查询object数组 查询强类型数组 查询泛型字典 查询字符串 SelectMany 索引 Distinct操作符 排序 嵌套查询 分组 组连接 内连接 左外连接 交叉连接 ...
- LINQ标准查询操作符(五)
十二.相等操作符 如果两个序列的对应元素相等且这两个序列具有相同数量的元素,则视这两个序列相等. SequenceEqual方法通过并行地枚举两个数据源并比较相应元素来判断两个序列是否相等.如果两个序 ...
- LINQ标准查询操作符(二)——Join、GroupJoin、GroupBy、Concat、
四.联接操作符 联接是指将一个数据源对象与另一个数据源对象进行关联或者联合的操作.这两个数据源对象通过一个共同的值或者属性进行关联. LINQ有两个联接操作符:Join和GroupJoin. 1. J ...
- Linq常用查询运算符
Linq一共包含五十几个查询运算符,常用的根据类型来区分一共有5类左右,这五类里面一些事在项目查询中经常用到的.不过linq运算符的命名十分规范,基本从字面意思就能猜测出来是干嘛用的,下面我们挑选一些 ...
随机推荐
- WPF最大化避免覆盖任务栏
原文:WPF最大化避免覆盖任务栏 WPF当窗体WindowStyle=”None”时,最大化会覆盖掉任务栏.如何解决这个问题呢? 我在Google里面搜到一篇文章,要用到Win32 API,通过让WP ...
- 关于C#的可变长参数
可变参数 params===>> params int[] list,传入参数的类型必须是一种类型 static void Main(string[] args) { , , , ); C ...
- WPF三维图形
原文:WPF三维图形 wpf 三维图形基础生成三维图形的基本思想是能得到一个物体的三维立体模型(model).由于我们的屏幕只有二维,因而我们定义了一个用于给物体拍照的照相机(Camera).拍到的照 ...
- CreateThread传递多个参数的方法(利用结构体的参数指针)
很多朋友一直都在问CreateThread如何传递多个参数,CreateThread传递参数的方式是指针传递的,所以这里也可以利用指针来做!Demo 关键代码如下: type TfrmTestThr ...
- ADB 基础命令使用
1.adb shell(>=2个设备显示:error: more than one device/emulator,仅连接一个设备可用) adb -d shell 只运行在真实设备中 adb - ...
- jQuery简明教程
本文参考w3cshool中文教程,网址:http://www.w3school.com.cn/jquery/index.asp 简介 jQuery是一个Javascript库,使用其的主要目的是简化J ...
- 树莓派 Qt5.7交叉编译
一.准备软件 1.2016-11-25-raspbian-jessie.img(官网下载) 2.cross-compile-tools-master.zip 3.gcc-4.7-li ...
- isHiden和isVisible的区别(可是有nativeEvent进行设置)
之前一直对isHiden和isVisible的区别比较模糊,都是乱用的.今天因需要仔细看了一下. 1.isHiden只是返回部件的隐藏属性,并不能表示部件当前的真实状态.比如A部件有个子部件B,而A处 ...
- 窗体图片背景(两种方法:设置Brush.Bitmap指向图片,别的控件也可以这样)
var Bitmap: TBitmap; procedure TForm1.FormCreate(Sender: TObject); begin Bitmap := TBitmap.Creat ...
- Gps坐标有效性判定
百科:纬度 是指某点与地球球心的连线和地球赤道面所成的线面角,其数值在0至90度之间.位于赤道以北的点的纬度叫北纬,记为N:位于赤道以南的点的纬度称南纬,记为S. var regex = new Re ...