基本概念
C#中可空類型是值可以為null
的類型捺弦,也就是說可以直接賦值為null
饮寞,比如int? value = null
。
出現(xiàn)的問題
按一般編程string text = true ? 'hello,world':null
來同樣給可空類型進(jìn)行三元運(yùn)算符計(jì)算
int? value = true ? 1 : null;
編輯器會(huì)提示:無法確定表達(dá)式的類型,因?yàn)?lt;null>和int之間沒有存在隱式轉(zhuǎn)換
解決方法
既然不能隱式轉(zhuǎn)換列吼,那就采取顯式轉(zhuǎn)換幽崩,代碼如下:int? value = ture ? 1 : (int?)null
小結(jié)
- 三元運(yùn)算符結(jié)果之間的類型必須可以
隱式轉(zhuǎn)換
- 可空類型的三元運(yùn)算符操作如果需要賦值為
null
的話,需要進(jìn)行強(qiáng)制(顯式)轉(zhuǎn)換