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" };

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

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

  • 相关阅读:
    网络配置
    数据管理
    仓库
    dockerfile
    docker 概念
    查看日志小技巧
    springboot缓存
    360笔试算法题 AT变换
    删除链表里全部重复元素以及删除链表重复元素只保留一个
    报错类型
  • 原文地址:https://www.cnblogs.com/my36z/p/1403716.html
Copyright © 2011-2022 走看看