C#特性(低频率使用)

新特性1、List?

            //取第一个元素
            List<string> list = null;

            //正常写法
            if (list != null
             && list.Count() > 0)
            {
                string sFirst = list[0];
            }

            //新特性
            string firstX = list?[0].ToString();//如果list为空 则直接返回null 不会再获取list第一个集合

            if (firstX != null)//说明有值
            {
                //do
            }
View Code

新特性2、

nameof() 括弧内可以填写方法名、程序集名称、变量名称

重载问题:会有多个重名方法nameof 读取哪一个?

static void foo() { }
static void foo(int x) { }

Console.WriteLine(nameof(foo));

答案 谁先定义 读到的就是谁。

原文地址:https://www.cnblogs.com/qixiaolan/p/13590727.html