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";