在寫JavaScript時,會下 var b = a || "test",當a是null時,b的值為test,用起來多簡捷,C# 也有這樣的語法,?? 運算子,當左邊是null時,回傳右邊的值。
在寫JavaScript時,會下 var b = a || "test",當a是null時,b的值為test,用起來多簡捷,C# 也有這樣的語法,?? 運算子,當左邊是null時,回傳右邊的值。
string a;
string b;
//寫法A
if (a == null)
{
b = "test";
}
else
{
b = a;}
//寫法B
b = a == null ? "test" : a;
//新寫法
b = a ?? "test"; //是不是簡捷許多呢?
NOTE:
因為C#是強型別的,?? 的左右二邊與賦值,一定要是同型別或可以隱含轉換的值才行string a = null; string b = a ?? 1; //必需3個都是String才行