C#语法中两个问号(??)的运算符的意思

?:单问号 (int?代表取值范围是 int+null

1.定义数据类型可为空。可用于对int,double,bool等无法直接赋值为null的数据类型进行null的赋值

2.用于判断对象是否为空,如果对象为空,则无论该对象调用什么皆不会抛出异常,直接返回null

??:双问号 可用于判断一个变量在为null时返回一个指定的值

a??1 等价于 a==null?1:a

    class Program
    {
        static int? x = null; //定义可空类型变量
        static int? y = x ?? 100; // x ?? 100等价于 x==null?100:x
        static void Main(string[] args)
        {
            Console.WriteLine(y.ToString());

            Console .ReadKey ();
        }
    }   

猜你喜欢

转载自blog.csdn.net/qq_40323256/article/details/86771753
今日推荐