C#null运算符

2021-11-29  本文已影响0人  秦海波
null运算符.jpeg

null运算符

==C#提供了三个简化null处理的运算符==

null合并运算符

合并运算符写作??。意思是如果左侧操作数不是null,则结果为操作数,否则结果为另一个值。合并运算适用于可空值类型

string s1 = null;
string s2 = s1 ?? "nothing";   // s2 evaluates to "nothing"

s2.Dump();

null合并赋值运算符

合并赋值运算符写作 ==??===。含义是如果左侧操作数为null,则将右侧的操作数赋值给左侧的操作数

string s1 = null;
s1 ??= "something";
Console.WriteLine (s1);  // something

s1 ??= "everything";
Console.WriteLine (s1);  // something

null条件运算符

==?.== 运算符称为null条件运算符或者Elvis运算符。当运算符左侧为null时候,该表达式运算结果也是null,而不会抛出NullReferenceException

System.Text.StringBuilder sb = null;
string s = sb?.ToString();   // No error; s instead evaluates to null
s.Dump();

string s2 = sb?.ToString().ToUpper();   // s evaluates to null without error
s2.Dump();
上一篇 下一篇

猜你喜欢

热点阅读