C# 运算符 ?、??、?: 各种问号的用法和说明
1、可空类型修饰符(?):引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空,例如:string str=null;是正确的。int i=null;编译器将报错。为了使值类型也可为空,可空类型出现了,可空类型使用可空类型修饰符?来表示,表现形式为T?。例:int?表示是可空的整形,DateTime?表示为可空的时间。T?其实是System.Nullable<T>(泛型结构)的缩写形式,也就意味着当你用到T?时编译器在编译时会把T?编译成System.Nullable<T>的形式,例如:int?,编译后便是System.Nullable<int>的形式。
int a; //a<>null
int ?b; //b=null
int ?c = b+1; //c=null;
2、空合并运算符(??):用于定义可空类型和引用类型的默认值。如果此运算符的左操作数不为 null,则此运算符将返回左操作数;否则返回右操作数。 例:a??b,当a为null时则返回b,a不为空时返回a本身。空合并运算符为右结合运算符,即操作时从右向左进行组合的。如,“a??b??c”的形式按“a??(b??c)”计算。
int?a=null; int b;(声明a和b)
b=a??2; //b=2;
a=6;b=a??8;//b=6;
3、三元(运算符)表达式(?:):如果这个你也不了解的话(我很不相信),那你就当我也不了解吧,不再赘述。
int a=1>0?1:0 //a=1;
上一篇:详解C#切换窗口
栏 目:C#教程
下一篇:C#程序中session的基本设置示例及清除session的方法
本文标题:C# 运算符 ?、??、?: 各种问号的用法和说明
本文地址:https://www.xiuzhanwang.com/a1/C_jiaocheng/6591.html
您可能感兴趣的文章
- 01-10C#实现打开画图的同时载入图片、最大化显示画图窗体的方法
- 01-10C#禁止textbox复制、粘贴、剪切及鼠标右键的方法
- 01-10http图片上传安全性问题 根据ContentType (MIME) 判断其实不准确、不
- 01-10浅析JAVA中过滤器、监听器、拦截器的区别
- 01-10C#调用WebService实例开发
- 01-10C#编程自学之开篇介绍
- 01-10C#编程自学之运算符和表达式
- 01-10C#编程自学之数据类型和变量一
- 01-10C#中Json字符串的各种应用类实例讲解
- 01-10C# WinForm快捷键设置技巧
阅读排行
本栏相关
- 01-10C#通过反射获取当前工程中所有窗体并
- 01-10关于ASP网页无法打开的解决方案
- 01-10WinForm限制窗体不能移到屏幕外的方法
- 01-10WinForm绘制圆角的方法
- 01-10C#实现txt定位指定行完整实例
- 01-10WinForm实现仿视频播放器左下角滚动新
- 01-10C#停止线程的方法
- 01-10C#实现清空回收站的方法
- 01-10C#通过重写Panel改变边框颜色与宽度的
- 01-10C#实现读取注册表监控当前操作系统已
随机阅读
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-10delphi制作wav文件的方法
- 01-10C#中split用法实例总结
- 01-11ajax实现页面的局部加载
- 01-10SublimeText编译C开发环境设置
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 04-02jquery与jsp,用jquery
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 08-05dedecms(织梦)副栏目数量限制代码修改