C# 中的 ? 运算符(空合并运算符)用于提供备用值,当变量可能为 null 时。其语法为 variableName ?? defaultValue,如果 variableName 不为 null,则返回其值,否则返回备用值。它提供了简洁性、可读性和避免空指针异常的优点。

C# 中的 ? 运算符
C# 中的 ? 运算符,又称空合并运算符或三元条件运算符,是一种简洁的语法,用于在变量可能为 null 的情况下提供备用值。
语法和用法
? 运算符的使用格式为:
<code class="csharp">variableName ?? defaultValue;</code>
其中:
-
variableName是要检查的变量。 -
??是空合并运算符。 -
defaultValue是如果variableName为null时返回的备用值。
如果 variableName 不为 null,则返回其值。否则,返回 defaultValue。
示例
以下代码演示了 ? 运算符的用法:
<code class="csharp">string name = null; // 使用 ? 运算符提供备用值 string result = name ?? "Unknown"; Console.WriteLine(result); // 输出 "Unknown"</code>
优点
使用 ? 运算符的优点包括:
-
简洁性:它提供了一种简洁的方式来处理可能为
null的变量,避免了冗长的 if-else 语句。 - 可读性:它提高了代码的可读性,因为明确地表达了备用值的行为。
-
避免空指针异常:通过在访问变量之前检查其是否为
null,可以避免意外的空指针异常。










