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

          }

          
      }

查看全文
  • 相关阅读:
    对称的二元变量和不对称的二元变量之间的区别是什么?
    数据挖掘中ID3算法实现zz
    深入浅出谈数据挖掘zz
    JS动态生成表格后 合并单元格
    JS 点击元素发ajax请求 打开一个新窗口
    JS实现拖动div层移动
    简单的表格json控件
    JS添加标签效果
    JS模板引擎
    如何使用seajs+jQuery构建中型项目
  • 原文地址:https://www.cnblogs.com/chenkai/p/1419126.html
  • Copyright © 2011-2022 走看看