Linq知识小结
Linq语法小结:
有两种形式的语法可供我们在写Linq查询时使用,分别是“查询语法”、“方法语法”。
1)先看个列子,有个直观认识
int[] arr = { 12, 2,45,34,23,18,4};
//查询语法形式(推荐使用这种)、返回的是一个可枚举类型
IEnumerable<int> results = from temp in arr
where temp > 20
select temp;
// 方法(又叫做标准查询运算符)语法形式
int max = arr.Max();
2)详细说明:
a、查询语法形式:
必须了解的一些语句:from、select|group (开始结束)是必须滴,查询体中可选的语句有where、from、let、join、into,
还有匿名类型,如 var person=new{Name='ls',Age=24} 这里常用在select语句中
b、标准查询运算符(即方法语法的形式):所有的查询运算符(方法)都在Sysytem.Linq.Enumerable中声明了,是为IEnumerable<T>扩张的一些方法
必须要了解的:被查询的集合对象叫做“序列”,它必须实现IEnumerable<T>接口(为什么?因为这些运算符即方法都是IEnumerable<T>这个泛型接口的扩展方法(在Enumerable类中对其扩展的));标准查询运算符使用方法语法(可以看成一回事);一些运算符返回的是可枚举类型(如where),也可能是个标量(如count返回的是整形)。返回标量的运算符立即执行,返回可枚举类型的会被延迟迭代,即调用变量时才调用。
还有匿名方法,这里常用在标准查询运算符的方法参数中(委托类型的参数):delegate(参数列表){方法体}
匿名方法常用Lambada表达式代替:(输入参数)=>expr
Linq知识小结的更多相关文章
- Android app开发知识小结
Android知识小结 这是一个知识的总结,所以没有详解的讲解. 一.分辨率Android中dp长度.sp字体使用.px像素.in英寸.pt英寸1/72.mm毫米 了解dp首先要知道density,d ...
- C/C++ 位域知识小结
C/C++ 位域知识小结 几篇较全面的位域相关的文章: http://www.uplook.cn/blog/9/93362/ C/C++位域(Bit-fields)之我见 C中的位域与大小端问题 内存 ...
- JAVA 变量 数据类型 运算符 知识小结
---------------------------------------------------> JAVA 变量 数据类型 运算符 知识小结 <------------------ ...
- html5-基本知识小结及补充
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
- HTTPS知识小结
HTTPS知识小结 背景1:TCP握手 internet上的两台机器A,B要建立起HTTP连接了,在这之前要先建立TCP连接,情景大概是这样子的: A:你好,我跟你建立一个TCP好吗? B:好啊. A ...
- shell 环境变量的知识小结
环境变量的知识小结:·变量名通常要大写.·变量可以在自身的Shell及子Shell中使用.·常用export来定义环境变量.·执行env默认可以显示所有的环境变量名称及对应的值.·输出时用“$变量名” ...
- 180531-Spring中JavaConfig知识小结
原文链接:Spring中JavaConfig知识小结/ Sring中JavaConfig使用姿势 去掉xml的配置方式,改成用Java来配置,最常见的就是将xml中的 bean定义, scanner包 ...
- javascript之正则表达式基础知识小结
javascript之正则表达式基础知识小结,对于学习正则表达式的朋友是个不错的基础入门资料. 元字符 ^ $ . * + ? = ! : | \ / ( ) [ ] { } 在使用这些符号时需要 ...
- PS修图知识小结
PS修图知识小结 [1]人去除红眼. 1.用红眼工具,框选红眼不分. 2.用椭圆选区工具,选择红眼部分 3..创建调整图层,亮度.对比度.加大对比度. 4.选择红眼部分.创建调整图层,可选颜色,减 ...
随机推荐
- Eclipse中查看Android模拟器SD卡目录
· 有时候用到Android模拟器来模拟SD卡相关操作,在Eclipse中可以直接查看SD卡目录: 首先,新建模拟器的时候要创建SD卡,存储的大小根据需要创建: 启动模拟器,在Eclipse中打开视图 ...
- MyEclipse常用设置笔记
1. Myeclipse下去掉SVN用户名和密码,就只能删除Subversion的auth目录 windows平台 Win7: 1.进入c:/Users/[你的用户名]/AppData/Roaming ...
- netty 实现socket服务端编写
import java.net.InetSocketAddress; import io.netty.bootstrap.ServerBootstrap; import io.netty.channe ...
- android SharedPreferences apply和commit的区别
1.apply没有返回值而commit返回boolean表明修改是否提交成功2.apply是将修改数据原子提交到内存, 而后异步真正提交到硬件磁盘, 而commit是同步的提交到硬件磁盘3.apply ...
- gitHub for windows设置网络代理
在公司网络环境下使用gitHub,一直出错,因为公司使用的代理.但是gitHub for windows无法设置代理. 可以通过C:\Users\admin\.gitconfig中,添加代理. 添加: ...
- poj 2488 A Knight's Journey( dfs )
题目:http://poj.org/problem?id=2488 题意: 给出一个国际棋盘的大小,判断马能否不重复的走过所有格,并记录下其中按字典序排列的第一种路径. #include <io ...
- freemarker 如何获得list的索引值
<#list toplist as toplists> ${toplists_index} </#list> 相当方便
- 纯干货,Spring-data-jpa详解,全方位介绍
本篇进行Spring-data-jpa的介绍,几乎涵盖该框架的所有方面,在日常的开发当中,基本上能满足所有需求.这里不讲解JPA和Spring-data-jpa单独使用,所有的内容都是在和Spring ...
- 为枚举类型添加说明 zt
enum Orientation { [DescriptionAttribute("东")] East, [DescriptionAttribute("南")] ...
- WebDriver打开浏览器-java
环境:配置jdk.使用Eclipse(个人爱好),导入selenium-java-2.42.2.jar.selenium-java-2.42.2-srcs.jar.selenium-server-st ...