C# 的可空类型

C#这个类型很有特色,因为默认情况下,基本值类型是不能被赋空值的,而可空类型是定义一个基本值类型,使它可以被赋空值.

使用单问号?修饰的变量,表示可以对该变量进行null赋值,
而使用双问号??运算,则类似与三目运算符,对变量进行是否为Null的判断,如果变量空则返回后面的值,非空则返回变量.

using System;
namespace nulltest
{
   class NullTest
   {
      static void Main(string[] args)
      {
            int? n1 = null, n2 = 123;
            int n3;
            n3 = n1 ?? 456;
            Console.WriteLine(n3);
            n3 = n2 ?? 789;
            Console.WriteLine(n3);
            Console.ReadLine();
      }
   }
}