Null許容型(Nullable 型)
例1
Nullもデータとして格納できるようにするには、型のすぐ右に「?」を入れように型宣言する
int? x = 123;
例2
以下でも同じ
Nullable<int> 123;
プロパティ
* HasValue : 有効な(null でない)値を持っていれば true、それ以外は false を返す
* Value : 有効な値を返す
例:Null許容型を文字列に変換する
public static string TransfermNullIntIntoString(int? data)
{
string returnVal = string.Empty;
if (data.HasValue)
{
returnVal = data.Value.ToString();
}
return returnVal;
}
注意
以下のようなことはできない
int sum = 0;
int? num = 1;
int sum = sum + num; // コンパイルエラー
対処例
int sum = 0;
int? num = 1;
if (num.HasValue)
{
sum = sum + num.Value;
}
int sum = sum + num; // コンパイルエラー
例
* x が null の場合、y が代入される
z = x ?? y;