null許容型
C# 2.0: 実装
C# 8.0: null許容参照型
宣言と初期化
int? x = 123; int? y = null;
値を持つかどうかはHasValueプロパティで判断できる
if (x.HasValue) Console.WriteLine(x.Value)
??演算子 (null coalescing operator)
int? z = x ?? y; // x != null ? x : y int i = z ?? -1; // z != null ? z.Value : -1
??=演算子
static void M(string s = null) { s ??= "default string"; // if (s == null) s = "default string"; Console.WriteLine(s); }
参考サイト
null許容値型(Nullable<T> 型) – C# によるプログラミング入門 | ++C++; // 未確認飛行 C
https://ufcpp.net/study/csharp/sp2_nullable.html