📜  C#8.0中的Null-Coalescing赋值运算符(1)

📅  最后修改于: 2023-12-03 15:30:16.605000             🧑  作者: Mango

C# 8.0中的Null-Coalescing赋值运算符

在 C# 8.0 中,引入了 Null-Coalescing 赋值运算符。这个运算符简化了将 null 值分配给变量的代码。

简介

在 C# 中,有时候我们需要给一个变量赋一个默认值,这个默认值可能是 null。在以前的版本中,通常会这样写:

if (myVariable == null)
{
    myVariable = defaultValue;
}

然而在 C# 8.0 中,可以使用 Null-Coalescing 赋值运算符来实现同样的效果:

myVariable ??= defaultValue;

Null-Coalescing 赋值运算符的意思是,如果左边的表达式的值为 null,则将右边的表达式的值赋给它。否则,不对它做任何修改。

示例

下面是一个使用 Null-Coalescing 赋值运算符的示例。假设我们有一个名为 person 的对象,这个对象有一个名为 firstName 的属性。如果这个属性的值为 null,则将它赋为 "John"。

person.firstName ??= "John";

如果 person.firstName 的值为 null,那么这段代码的效果就是将它赋值为 "John"。否则,不会修改该属性的值。

总结

Null-Coalescing 赋值运算符是 C# 8.0 中一个简化代码的好工具。如果您需要对变量进行默认值的设置,并且这个默认值可能是 null,您可以考虑使用它。