1.5 KiB
1.5 KiB
title, localeTitle
| title | localeTitle |
|---|---|
| Null-coalescing Operator | 空结合运算符 |
空结合运算符
C#中的null-coalescing运算符用于帮助将一个变量分配给另一个变量,如果源值为null ,则指定备用值。 C#中的null-coalescing运算符是?? 。
例1
由于name为null , clientName将为clientName分配值“John Doe”。
string name = null;
string clientName = name ?? "John Doe";
Console.WriteLine(clientName);
> John Doe
例2
由于name不为null , clientName将为clientName分配name的值,即“Jane Smith”。
string name = "Jane Smith";
string clientName = name ?? "John Doe";
Console.WriteLine(clientName);
> Jane Smith
替代if ... else语句
您可以使用if...else语句来测试是否存在null并分配不同的值。
string clientName;
if (name != null)
clientName = name;
else
clientName = "John Doe";
但是,使用null-coalescing运算符可以大大简化这一点。
string clientName = name ?? "John Doe";
条件(三元)运算符的替代
也可以使用条件运算符来测试null的存在并分配不同的值。
string clientName = name != null ? name : "John Doe";
同样,这可以使用null-coalescing运算符进行简化。
string clientName = name ?? "John Doe";