rksoftware

Visual Studio とか C# とかが好きです

C# 8 の確認 - null 合体割り当て

今回は null 合体割り当て です。

公式はこちら

このブログでの目次?はこちら

実例

??= 左辺の変数が null の場合、左辺に右辺の値が代入される。左辺が null でない場合、何も起きない。

string text = null;
// text が "saitama" となり "saitama" が表示される
Console.WriteLine(text ??= "saitama");
// text は "saitama" なので ??= で値は変わらず "saitama" が表示される
Console.WriteLine(text ??= "gunma");

+= を考える

+= を考えるとわかりやすいです。

val += 1;
val = (val + 1);

text ??= "saitama";
text = (text ?? "saitama");

分かりやすいですね。