C#中的问号运算符

删除回忆录丶 提交于 2020-03-16 08:13:19

C#中的问号运算符分为三种功能:

 

第一种:单问号作为条件判断的三元运算符。
这种方式可以处理一些简单的IF结构的条件语句,
比如简单的根据条件结果赋值的功能:

int a =4;
int b =-4;
int c = b >0? b : a;

上面的代码实现了如果变量b的值大于0,则将b的值赋给c,否则将a的值赋给c。

 

第二种:单问号做为基本数据类型声明变量的标识符。
这种方式结构如下:

int?<argument>=<value>;

这样可以实现基本数据类型的值也可以赋为null。
比如:

int i =null;

这样的代码将在编译时报错,而像下面的代码则可以正常执行:

int? i =null;

 

 

第三种:双问号做为条件判断的运算符。
比如我们要保证一个字符串对象的值不能为null,则可以使用如下方式:

string str1 =null;
string str2 = str1 ??"";

上面代码将自动判断str1对象的值,如果不为null,将str1的值赋于str2,否则将空字符串赋于str2

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!