1.??

为了实现Nullable数据类型转换成non-Nullable类型数据,才有的一个操作符;

意义:一变量取值,取符号左边的值,若左边为null,那么取赋值??右边的;

栗子:int  a=3??-1 ; //??符左边是3,不为空,所以a的值是3;

栗子2:int b=a??9;//??若a为空,则b取值为9;

2.?:

三元运算符,可参看之前的文章;另条件操作符是向右关联的,从左到右进行计算

栗子:a?b:c?d:e 可理解为 a?b:(c?d:e)

3.?

意义:用于对 int,double,bool 等无法直接赋值为 null 的数据类型进行 null 的赋值,意思是这个数据类型是 NullAble 类型的。

【引用:”?(单问号)“修饰符,是System.Nullable的缩写形式,比如int?代表是可空的整形,例如:int? a = 1 或者 int? b=null。Nullable类型具有一个HasValue的bool类型只读属性,当Nullable类型实例的该属性为true时,则表示该实例是非空实例,包含一个已知值Value,HasValue为false时,访问Value属性将导致System.InvalidOperationException。这个其实我不大懂的

栗子:

int a; //默认值0
int? aa; //默认值null

随机推荐

  1. 百度AI—人脸在线比对

    首先访问百度AI网站:https://cloud.baidu.com/,按照下图的指示点开到应用管理的页面. 穿件完成之后到管理中可以查看到对应的 添加工具类: using System; using ...

  2. mysql忘记root密码的处理方式

    1.停用mysql服务 service mysqld stop 2.修改my.cnf    利用vim命令打开mysql配置文件my.cnf 添加skip-grant-tables,添加完成后,执行w ...

  3. javascript 练习题目答案1

    以下是这个教程的答案 https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/00143 ...

  4. Linux学习指导

    初次学习Linux,首先在虚拟机中尝试它. 虚拟机我推荐Virtual Box,我并不主张使用VM,原因是VM是闭源的,并且是收费的,而Virtual Box很小巧,Windows平台下安装包在80M ...

  5. vmware+CentOs 6.9的安装步骤

    一.安装步骤 linux分区 登录用户名和密码 登录用户名和密码后安装成功 二.远程控制Xshell的安装

  6. IntelliJ IDEA 下的SVN使用

    最近公司的很多同事开始使用IntelliJ Idea,便尝试了一下,虽然快捷键与eclipse 有些不同,但是强大的搜索功能与“漂亮的界面”(个人认为没有eclipse好看 ),还是值得我们去使用的. ...

  7. 20155309南皓芯 网络对抗《网络攻防》 Exp1 PC平台逆向破解(5)M

    实践目标 本次实践的对象是linux的可执行文件 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串. 该程序同时包含另一个代码片段,getShell,会返回一个可 ...

  8. For each loop in Native C++

    今天发现 for each 语法居然可以直接编译通过,之前还以为只有开了/clr才可以支持.查了一下资料发现ms从vs2005就已经支持了.虽然不符合标准不过用着确实方便啊,必须记录一下. 具体看这里 ...

  9. HDU 3980 (SG 环变成链 之前的先手变成后手)

    题意 两个人在一个由 n 个玻璃珠组成的一个圆环上玩涂色游戏,游戏的规则是: 1.每人一轮,每轮选择一个长度为 m 的连续的.没有涂过色的玻璃珠串涂色 2.不能涂色的那个人输掉游戏 Aekdycoin ...

  10. android 换行符(\n) 在TextView中显示不正常的问题

    问题描述 在Android开发,使用TextView设置换行的时候,会有这种情况: 1.如果直接在XML文件中写入"aaaaa\nbbbb"可以换行,显示为: aaaaabbbbb ...