C# ?、?:、??、?.
? 可空(null)类型修饰符
//int x = null; // 错误,变量x不是引用类型
int? xx = null;
? : 三元(运算符)表达式
x ? y : z 表示如果表达式x为true,则返回y;如果x为false,则返回z
int y = 1 > 0 ? 10 : 0; // y=10
?? 空合并运算符
x ?? y 表示如果x不为null则返回x;如果x为null则返回y
string z = null ?? "空合并运算符"; // x= "空合并运算符"
?. null检查运算符
x?.property1 表示如果x==null则返回null;否则返回x.property1 属性值