C# 可空类型(Nullable)

? : 单问号用于对 int,double,bool 等无法直接赋值为 null 的数据类型进行 null 的赋值,意思是这个数据类型是 NullAble 类型的。(引用类型默认值null)

  int? num1 = null;
         int? num2 = 45;//默认值45

Null 合并运算符( ?? )

Null 合并运算符用于定义可空类型和引用类型的默认值。Null 合并运算符为类型转换定义了一个预设值,以防可空类型的值为 Null。Null 合并运算符把操作数类型隐式转换为另一个可空(或不可空)的值类型的操作数的类型。

 double num3;
         num3 = num1 ?? 5.34;      // num1 如果为空值则返回 5.34

 bool? boolval = new bool?();// 值为空
 
 
原文地址:https://www.cnblogs.com/bawang/p/8761196.html