Pengendali
? dan ?? adalah pengendali bersyarat dan digunakan untuk memilih nilai. Operator ? melemparkan pengecualian jika salah satu operan adalah nol, operator itu mengendalikan nilai nol dengan selamat dan mengembalikan operan kanan jika operan kiri adalah nol.
Perbezaan antara operator ? dan ?? dalam C#
Operator ? Walau bagaimanapun, perbezaan utama mereka ialah mekanisme untuk mengendalikan nilai nol:
? (operator bersyarat ternari)
condition ? value_if_true : value_if_false
condition ? value_if_true : value_if_false
value_if_true
,否则返回 value_if_false
。value_if_true
或 value_if_false
为空,则会引发 NullReferenceException。示例:
<code class="csharp">int? nullableValue = null; string result = nullableValue ?? "Default value"; // result = "Default value"</code>
?? 操作符(空合并运算符)
leftOperand ?? rightOperand
示例:
<code class="csharp">object nullableObject = null; object result = nullableObject ?? new object(); // result = new object()</code>
总结
?
运算符用于在特定条件下选择值,如果任一操作数为 null 则会引发异常。??
value_if_true
, jika tidak kembalikan value_if_false
. 🎜🎜Jika value_if_true
atau value_if_false
kosong, NullReferenceException akan dilemparkan. . . 🎜🎜Jika operan kiri bukan nol, kembalikan operan kiri; jika tidak, kembalikan operan kanan. 🎜🎜Operan yang betul boleh menjadi sebarang nilai, termasuk nol. 🎜🎜🎜🎜Contoh: 🎜🎜rrreee🎜🎜Ringkasan🎜🎜🎜🎜??
digunakan untuk mengembalikan operan kanan apabila operan kiri adalah batal, dan boleh mengendalikan nilai nol dengan selamat. 🎜🎜Atas ialah kandungan terperinci Apakah perbezaan antara operator dan ??. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!