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知识小结的更多相关文章

  1. Android app开发知识小结

    Android知识小结 这是一个知识的总结,所以没有详解的讲解. 一.分辨率Android中dp长度.sp字体使用.px像素.in英寸.pt英寸1/72.mm毫米 了解dp首先要知道density,d ...

  2. C/C++ 位域知识小结

    C/C++ 位域知识小结 几篇较全面的位域相关的文章: http://www.uplook.cn/blog/9/93362/ C/C++位域(Bit-fields)之我见 C中的位域与大小端问题 内存 ...

  3. JAVA 变量 数据类型 运算符 知识小结

    ---------------------------------------------------> JAVA 变量 数据类型 运算符 知识小结 <------------------ ...

  4. html5-基本知识小结及补充

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8&qu ...

  5. HTTPS知识小结

    HTTPS知识小结 背景1:TCP握手 internet上的两台机器A,B要建立起HTTP连接了,在这之前要先建立TCP连接,情景大概是这样子的: A:你好,我跟你建立一个TCP好吗? B:好啊. A ...

  6. shell 环境变量的知识小结

    环境变量的知识小结:·变量名通常要大写.·变量可以在自身的Shell及子Shell中使用.·常用export来定义环境变量.·执行env默认可以显示所有的环境变量名称及对应的值.·输出时用“$变量名” ...

  7. 180531-Spring中JavaConfig知识小结

    原文链接:Spring中JavaConfig知识小结/ Sring中JavaConfig使用姿势 去掉xml的配置方式,改成用Java来配置,最常见的就是将xml中的 bean定义, scanner包 ...

  8. javascript之正则表达式基础知识小结

    javascript之正则表达式基础知识小结,对于学习正则表达式的朋友是个不错的基础入门资料.   元字符 ^ $ . * + ? = ! : | \ / ( ) [ ] { } 在使用这些符号时需要 ...

  9. PS修图知识小结

    PS修图知识小结   [1]人去除红眼. 1.用红眼工具,框选红眼不分. 2.用椭圆选区工具,选择红眼部分 3..创建调整图层,亮度.对比度.加大对比度. 4.选择红眼部分.创建调整图层,可选颜色,减 ...

随机推荐

  1. POJ2115——C Looooops(扩展欧几里德+求解模线性方程)

    C Looooops DescriptionA Compiler Mystery: We are given a C-language style for loop of type for (vari ...

  2. Python之模块篇

    简介 你已经学习了如何在你的程序中定义一次函数而重用代码.如果你想要在其他程序中重用很多函数,那么你该如何编写程序呢?你可能已经猜到了,答案是使用模块.模块基本上就是一个包含了所有你定义的函数和变量的 ...

  3. Android开发之全局获取Context的技巧

    转自<第一行代码-Android>进阶篇 这本书对于入门来说确实很棒,很简单明了的介绍了Android开发中涉及到的方方面面,对我的帮助很大,同时记录一些该书中一些对我以后开发有用的东西, ...

  4. 函数buf_LRU_block_remove_hashed_page

    /******************************************************************//** Takes a block out of the LRU ...

  5. unity3d中获得物体的尺寸(size)

    1:获得诸如Plane.Cube的size.    1):可以为它们添加Collider,然后使用XXX.collider.bounds.size;该方法获得的size和缩放比例有关,是一一对应的,缩 ...

  6. 修改Android默认背光值

    /********************************************************************* * 修改Android默认背光值 * 说明: * 本文主要 ...

  7. HDU 3549 Flow Problem 流问题(最大流,入门)

    题意:给个赤裸的最大流问题. 思路:EK+BFS解决.跟HDU1532几乎一样的. #include <bits/stdc++.h> #define LL long long #defin ...

  8. 【jsonp】

    function handleResponse(response) { alert("You’re at IP address " + response.ip + ", ...

  9. Ruby类,模块1

    类的扩展和继承 class Fixnum def dosome(str) puts str end def abs puts "覆盖了原有的方法" end end puts 1.c ...

  10. (二)学习C#之内存管理

    一.当你运行你的程序通常都会访问哪些内存空间呢? 电脑自言自语道,“这个人要声明一个整数”或“这个人个方法”或“这个人要创建一个对象” 1.这些信息究竟是存在内存里的什么地方呢? 2.或者说用于描述这 ...