C#中?的相关使用
1. 可空类型
使用后可以使值类型的变量,既可以接收null也可以接收正常的值类型。
int? a = null; a = 10;
2. 可空运算符
使用?前:
if(object != null){//方法调用 object.method(); } if(array != null){ //数组索引 int a = array[1]; }
使用?后:
object?.method(); array?[1];
3. 三元运算符 condition?(true result):(false result)
使用?前:
if(object.num!=null) { int num =object.num } else { int num=0 }
使用?后:
int oneNum = object.num !=null? object.num : 0;
4. 空合并运算符 ??
使用??前:
int oneNum = object.num !=null? object.num : 0;
使用??后:
int oneNum = object.num ?? 0;
总结
null在很多情况下,对于程序而言都是不友好的,我们也极力地避免null的出现。相比较使用各种判断语句而言,?的出现无疑让代码精简了不少,理解性也提高了很多。而且它们之间的嵌套使用(像最后一个例子)在复杂的判断中优势更加的明显。
分类: C# 标签:C#,object,int,num,使用,相关,null From: https://www.cnblogs.com/gatran/p/17655087.html