不能使用的對(duì)象,可以用設(shè)置其值為空null來(lái)標(biāo)識(shí)。但是基本值類型是不能賦值為空的,那會(huì)導(dǎo)致編譯錯(cuò)誤。傳統(tǒng)的經(jīng)驗(yàn)解決辦法是賦給其一個(gè)取值范圍之外的值,如“-1”(0xFFFFFFFF),但這種方法并不標(biāo)準(zhǔn)。
現(xiàn)在C# 給出了一種完美的解決方案——可空類型(nullable type):聲明值類型的變量時(shí),在變量名后添加可空類型的問(wèn)號(hào)符“?”,則該變量成為可空類型,可以被賦值為空。
在C# 中,還可以通過(guò)可空類型的共用只讀屬性HasValue,來(lái)判斷可空類型變量是否為空。例如:
int? x = 123;
int? y = null;
if (x.HasValue) Console.WriteLine(x.Value); // 輸出“123”
if (y.HasValue) Console.WriteLine(y.Value); // 無(wú)輸出
新聞熱點(diǎn)
疑難解答
圖片精選