??表達式是用來保證值不會爲空
string
s = null;
string str = s ?? "hello";
如果s爲空那麼str="hello" ,如果不爲空就是str=s;
?修飾符,是System.Nullable的縮寫形式,讓值類型可賦值爲null
例如:
System.Nullable<int>b=null;
縮寫爲:
int? b=null;
Nullable類型具有一個HasValue的
bool
類型只讀屬性,
當Nullable類型實例的該屬性爲
true
時,則表示該實例是非空實例,包含一個已知值Value,
HasValue爲
false
時,訪問Value屬性將導致System.InvalidOperationException。