atsukanrockのブログ

Microsoft系技術を中心にぼちぼち更新します

??演算子(null合体演算子)

??演算子(null合体演算子)というのがある。C# 2.0(Visual Studio 2005でのC#のバージョン)でも使える。恥ずかしながら、ついさっき知った…。

x ?? y

と書くと、xがnullの場合yと評価され、それ以外の場合はxと評価される。これ、絶対使う。

サンプルは以下のとおり。

// OracleのNVLみたいなもんですね
Console.WriteLine(null ?? "hoge"); // outputs "hoge"

// 連続させてもOK
Console.WriteLine(null ?? "hoge" ?? "fuga"); // outputs "hoge"