C#中關於可空類型的小常識。本站提示廣大學習愛好者:(C#中關於可空類型的小常識)文章只能為提供參考,不一定能成為您想要的結果。以下是C#中關於可空類型的小常識正文
1) 在與1元或二元運算符一路應用時,假如個中一個操作數為null或兩個均null,則成果為null。
如:
int? a = null;
int? b = a+3;
則b為null
2) 比擬可空類型時,只需有一個操作數為null,成果就為false
如:
int? a = null;
int? b = 8;
(a>=b)將前往false
而恰是由於null的能夠性,所以不克不及隨便比擬一個可空類型和一個非可空類型。
3) 空接合運算符
空接合運算符”??”為處置可空類型和援用類型時表現Null值的能夠性供給了一種快捷方法,也許我們不消總寫if(XX!=null)。有點相似三元運算符”?:”,假如”??”後面一個數(第一個數必須為可空或援用類型)不是null,則表達式的值就為第一個操作數的值,假如第一個操作數為Null,表達式的值則為第二個表達式的值。
如:
int? a= null;
int defaut = 1010;
int b;
b=a??defaut;//此時b取defaut的值
a = 8;
b=a??defaut;//此時b取a的值
固然,這裡第二個數應當是與第一個數類型雷同或許能隱式轉化為第一個數的。
PS:沒法創立基於援用類型的可空類型,由於援用類型已支撐 null 值。