不能使用的對象,可以用設置其值為空null來標識。但是基本值類型是不能賦值為空的,那會導致編譯錯誤。傳統的經驗解決辦法是賦給其一個取值范圍之外的值,如“-1”(0xFFFFFFFF),但這種方法并不標準。
現在C# 給出了一種完美的解決方案——可空類型(nullable type):聲明值類型的變量時,在變量名后添加可空類型的問號符“?”,則該變量成為可空類型,可以被賦值為空。
在C# 中,還可以通過可空類型的共用只讀屬性HasValue,來判斷可空類型變量是否為空。例如:
int? x = 123;
int? y = null;
if (x.HasValue) Console.WriteLine(x.Value); // 輸出“123”
if (y.HasValue) Console.WriteLine(y.Value); // 無輸出
新聞熱點
疑難解答