zoukankan      html  css  js  c++  java
  • 回顾C#3.0新特性(1)

    一 隐式类型的本地变量和数组

    新的关键字var,声明变量相当于object类型,但是又更方便不需要类型转换

    二 对象和集合初始值设定项

    创建对象时初始化值
    Cat cat = new Cat;
    cat.Age = 10;
    cat.Name = "Sylvester";
    简化为
    Cat cat = new Cat { Age = 10, Name = "Sylvester" };
    利用这个特性还可以重命名LINQ
    var productInfos =
    from p in products
    select new { p.ProductName, Price = p.UnitPrice };
     
    集合初始值设定项
    Cat c1 = new Cat();
    c1.Name = "Sylvester";
    c1.Age = 8;
    List<Cat> cats = new List<Cat>
    {
        c1
    };
    简化为
    List<Cat> cats = new List<Cat>
    {
        new Cat(){ Name="Sylvester", Age=8 },
        new Cat(){ Name="Whiskers", Age=2},
        null
    };
    将集合初始值设定项用于可为 null 的结构会导致编译时错误?

    三 匿名类型

    前两个特性综合一下。

    既然

    Cat cat = new Cat { Age = 10, Name = "Sylvester" };

    那么

    var cat = new Cat { Age = 10, Name = "Sylvester" };

    也成立了。然后这就叫匿名类型。。。

    主要是省去了类的定义,方便一次性使用。

  • 相关阅读:
    北京初“探”,还是初“谈”
    hadoop集群安装(多机,非伪集群)
    iOS8下注冊push方式变更
    Linux文件编辑命令具体整理
    HDU 1260
    二叉树遍历(前序、中序、后序、层次、深度优先、广度优先遍历)
    关于Linux静态库和动态库的分析
    JavaScript特效之前进,后退(返回上一级)
    具体解释Hibernate中的事务
    iOS开发
  • 原文地址:https://www.cnblogs.com/my36z/p/1403716.html
Copyright © 2011-2022 走看看