zoukankan      html  css  js  c++  java
  • LINQ学习笔记(二)

    LINQ语法基础

      1  C#3.0新的语言机制

        (1)隐形局部变量

        (2)对象初始化器

        (3)匿名类型

        (4)隐形数组

        (5)Lambda表达式

        (6)查询表达式

        (7)扩展表达式

        (8)表达式树

      2 使用var创建隐形局部变量

        C#3.0使用var关键字声明变量。var关键字指示编译器能够变量初始化表达式判断变量的类型,即是用var关键字声明变量时,隐藏了该变量的类型。

       (1)var关键字声明声明的变量必须包含一个初始化器,初始化器必须为一个表达式。且初始化器不能包含自身对象;

        (2) var关键字声明的变量的初始化值不能为null;

        (3) 不能在同一语句中初始化多个隐式类型的变量

      3 对象和集合初始化器

        对象初始化器可以不调用类的构造函数就能够创建类的实例,并设置该实例的属性的值。

        集合初始化器用来初始化一个集合,它由一系列元素组成,并封闭于"{"和"}"标记内

       (1)对象初始化器

            UserInfo user=new UserInfo

             {

                ID=2008,

                 Username="This is a book",

                 AliasName=new List<string>{"ASP.NET"},

                 Email="asp.net@web.com",

                 RoleID=2

             };

         (2) 集合初始化器

             List<int> number=new List<int>{0,1,2,3,4,5,6,7,8,9};

                        集合初始化器调用ICollection<T>.Add()方法将初始化器的值列表中的每一         个元素添加到集合中,并完成初始化操作。

             List<int> numbers=new List<int>();

             numbers.Add(0);

                  numbers.Add(1);

                  numbers.Add(2);

             numbers.Add(3);

                  numbers.Add(4);

                  numbers.Add(5);

      4  创建匿名类型的对象

          var role=new {ID=1,RoleName="Admin"};

      5  创建隐形数组

          隐形数组使用var关键字和数组初始化器创建。数组初始化器中必须存在一种数       据类型(不能为null),使得数组初始化器中的所有元素都能够隐式转换为该类        型的对象

          var numbers =new[]{0,1,2,3,4,5,6,7,8,9}

          下面的代码将产生错误

          var errors=new[]{"he,"she","it","1","2"};

      6   Lambda表达式

          Lambda表达式是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托       和表达式目录树类型。

          Lambda表达式的组成:

           输入参数(如果存在)

           Lambda运算符(=>)

           表达式(或语句块)

          (input parmeters) => expression

            x => x * x;

         (1)Lambda表达式的参数

              没有参数时可以省略括号;有一个参数时可以省略;一个以上参数时必须          加括号

         (2)Lambda表达式的语句

              Lambda运算符的右边不但可以是一个表达式,还可以是语句块

          (3) Lambda表达式转换

              每一个Lambda表达式都可以转换为相应的函数

       7   查询表达式

           查询表达式由一组用类似于SQL或XQuery的声明性语法编写的字句组成

          (1) 查询表达式基础

                查询表达式包含8个基本子句:from、select、group、where、orderby              join和let子句

          (2) 查询表达式的基本子句(略)

               

  • 相关阅读:
    web自动化搞定文件上传
    App自动化08-Android SDK目录架构详解
    App自动化07-Appium日志分析,深入剖析 Appium 实现原理
    App自动化06-adb常见连接问题整理
    crontab 定时任务
    谷歌对华为断供了,那自动化测试还做吗?
    Fiddler 抓取 https 请求大全
    App自动化05-adb
    App自动化04-Inspector检查器启动QQ测试
    (转载)边缘计算与深度学习综述
  • 原文地址:https://www.cnblogs.com/BigSeaHorse/p/LINQ_Study_2.html
Copyright © 2011-2022 走看看