zoukankan      html  css  js  c++  java
  • C#3.0新特性小结(2)

    c#3.0中除了自动属性外,还添加:

  • 隐含类型局部变量(Local Variable Type Inference)
  • 匿名类型(Anonymous Types)
  • 对象与集合初始化器(Object and Collection Initializers)
  • 代码演示实例:

     //测试数组
            public static void TestArray()
            {
                
    //测试数组
                var intArray = new[] { 120110119 };
                var strArray 
    = new[] { "TreeyLee""JFlyZhao""JFlyingchen" };

                var objArray 
    = new[] { 
                 
    //初始化对象
                new {username="马鹏飞",userpass="AdminDoucment"},
                
    new {username="周静",userpass="周界"}
               };

                
    //对单个变量赋值
                var seta =intArray[0];
                var setb 
    = strArray[1];
                var setc 
    = objArray[1].userpass;//可以副单个属性 也可副单个对象objArray[0]

               
    //打印当前数据
                Console.WriteLine("seta:" + seta + "\nsetb:" +setb+ "\nsetc:" + setc);

            }

        
    /// <summary>
        
    /// 综合测试匿名类型
        
    /// </summary>
      public class TotalTestAnnoy
      {
          
    //定义属性
          public string username { getset; }
          
    public string userpass { getset; }
          
    public int age { getset; }
           
          
    //定义测试方法
          public static void TestMethods()
          {
              
    //集合初始化器
              List<TotalTestAnnoy> TotalList = new List<TotalTestAnnoy> { 
               
    //不能直接写new {} 集合器中只能装TotalTestAnnoy对象,不能var类型
                new TotalTestAnnoy{username="老顾",userpass="laogu",age=21},
                
    new TotalTestAnnoy{username="周静",userpass="zhoujing",age=26},
                
    new TotalTestAnnoy{username="陈凯",userpass="chenkai",age=21}
              };

              
    //定义匿名类型
              var GetTotalList = from newtotallist in TotalList
                                 
    where newtotallist.age == 21//吧结果定义成一个新对象 只包含两个属性newname 和newpass
                                 select new { newname = newtotallist.username, newpass = newtotallist.userpass };
              
    //循环打印新对象
              foreach(var getfirst in GetTotalList)
              {
                  
    //打印新实例结果
                  Console.WriteLine("定义新实例newname:"+getfirst.newname+"\nnewpass:\n"+getfirst.newpass);
              }

          }

          
      }

查看全文
  • 相关阅读:
    sql2slack alash3al 开源的又个轻量级工具
    pgspider fetchq 扩展docker镜像
    godns 集成coredns 的demo
    godns 简单dnsmasq 的dns 替换方案
    aviary.sh 一个基于bash的分布式配置管理工具
    使用coredns 的template plugin实现一个xip 服务
    nginx 代理 coredns dns 服务
    基于nginx proxy dns server
    几个不错的geodns server
    spring boot rest api 最好添加servlet.context-path
  • 原文地址:https://www.cnblogs.com/chenkai/p/1419126.html
  • Copyright © 2011-2022 走看看