[C#]问号?和双问号??
[C#]问号?和双问号?? 如何使用
问号?表示该变量可以为空
int?;
等价于:int? = null;
双问号??表示如果为双问号左边的变量为null,则取右边的值,否则取左边变量的值
c=a??b;
等价于:c=(a==null)?b:a;
- 实例
string? s = null;
int returnValue = int.Parse(s ?? "-1");
//结果:returnValue==-1;
注意
a、b连个变量的类型必须相同,不一样的情况下需要强制转换,不然会报错。