準備
(なし)
デザイン
- フォーム (Form1) にボタン (button1) を配置します。
- フォーム (Form1) にリストボックス (listBox1) を配置します。
サンプルコード (C#)
namespace WinFormsApp1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } private void button1_Click(object sender, EventArgs e) { int? v1 = null; // if 文による null の比較 int? v2 = v1; if (v2 != null) { listBox1.Items.Add(v2 * 10); } else { listBox1.Items.Add(0); } // 条件演算子による null の比較 int? v3 = (v1 != null) ? v1 * 10 : 0; listBox1.Items.Add(v3); // null 合体演算子による null の比較 int? v4 = v1 * 10 ?? 0; listBox1.Items.Add(v4); } } }
解説
変数の内容が null であるか、ないかを判断しています。通常の if 文、条件演算子、null 合体演算子により比較しています。null 合体演算子 は null の比較専用の演算子なので、最もコード量が少ないことが特徴です。尚、null 合体演算子は、「null でないこと」と考えるのが基本です。
結果
動作確認環境
Visual Studio 2022 Professional (.NET 7 C#11)
ログ
初版:2016.04.24 Visual Studio 2015 Professional (C# 6.0)