これは null 合体 演算子です。 null 合体演算子は、左側のオペランドが null でない場合は左側のオペランドの値を返し、それ以外の場合は右側のオペランドを評価してその結果を返します。 ?? 演算子は、左側のオペランドが非 null と評価された場合、右側のオペランドを評価しません。
Null 許容型は、未定義または型ドメインの値を表すことができます。左側のオペランドが null 許容型の場合、?? 演算子を使用して適切な値を返すことができます。 ?? 演算子を使用せずに null 許容値型を null 非許容値型に代入しようとすると、コンパイル時エラーが発生し、キャストを強制すると InvalidOperationException がスローされます。
Null-Coalescing 演算子 (??) の利点は次のとおりです -
Null 許容項目 (値の型と参照型) のデフォルト値を定義するために使用されます)。
実行時の InvalidOperationException 例外を防ぎます。
これは、多くの冗長な「if」条件を排除するのに役立ちます。
using System; namespace MyApplication{ class Program{ static void Main(string[] args){ int? value1 = null; int value2 = value1 ?? 99; Console.WriteLine("Value2: " + value2); string testString = "Null Coalescing"; string resultString = testString ?? "Original string is null"; Console.WriteLine("The value of result message is: " + resultString); } } }
えええええ
以上がC# で 2 つの疑問符 (??) は何を意味しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。