在 C# 中,null 合并操作符是 ??
,它用于简化对可空类型或可能为 null 的对象的操作。这个操作符的作用是当左侧的操作数不为 null 时返回左侧的值,否则返回右侧的值。
下面是一个简单的示例:
csharp
string value = null;
string result = value ?? "默认值";
Console.WriteLine(result); // 输出: 默认值
在这个例子中,因为 value
为 null
,所以 result
将被赋值为 "默认值"
。
此外,C# 还有一个增强版的 null 合并赋值操作符 ??=
,它用于在左侧操作数为 null 的情况下,给左侧赋值。例如:
csharp
string value = null;
value ??= "新值";
Console.WriteLine(value); // 输出: 新值
在这个例子中,value
为 null
,所以它被赋值为 "新值"
。如果 value
已经有一个非 null 的值,那么 ??=
操作符将不会改变它的值。