?? 运算符 和三元运算符
如果 ?? 运算符的左操作数非 null,该运算符将返回左操作数,否则返回右操作数。
示例:
// nullable_type_operator.cs using System; class MainClass { static int? GetNullableInt() { return null; } static string GetStringValue() { return null; } static void Main() { // ?? operator example. int? x = null; // y = x, unless x is null, in which case y = -1. int y = x ?? -1; // Assign i to return value of method, unless // return value is null, in which case assign // default value of int to i. int i = GetNullableInt() ?? default(int); string s = GetStringValue(); // ?? also works with reference types. // Display contents of s, unless s is null, // in which case display "Unspecified". Console.WriteLine(s ?? "Unspecified"); } }
三元运算符 举例如下
string resultString = (myInteger < 10) ? "Less than 10" : "Greater than or equal to 10";