C#中一个问号和两个问号(a ?? b)的作用
2015-12-28 11:27
471 查看
不卖关子,直接开门见山:
C#中两个问号的作用是判断??左边的对象是否为null,如果不为null则使用??左边的对象,如果为null则使用??右边的对象。比如:a = b ?? c,如果b为null,则a = c,如果b不为null,则a = b。
下面一段代码演示了这两种情况:
?
?
?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int? a;
a = null;//此时输出3
//a = 6;//此时输出6
int b = a ?? 3;
Console.Write(b);
Console.ReadKey();
}
}
}
变量定义中含有一个问号,意思是这个数据类型是NullAble类型的。
变量定义中含有两个问号,双目运算符,意思是取所赋值??左边的,如果左边为null,取所赋值??右边的。
相关文章推荐
- C#并行编程-并发集合
- C#基础精华07(委托事件,委托的使用,匿名方法)
- C#基础精华07(委托事件,委托的使用,匿名方法)
- c#自定义液晶数字控件
- C#字符串小知识
- C#基础——加密
- c#继承
- c#结构体
- C#实现Stream与byte[]之间的转换实例教程
- C# byte数组与Image的相互转换
- c#类
- c#面向对象
- C#网页跳转方法总结
- webBrowser捕获Alert内容(C#)
- C#winform webBrowser 实现抓句柄 想输入框中输入内容(笔记)
- C#学习笔记008-继承
- (C#) Tasks 中的异常处理(Exception Handling.)
- c#webBrowser 获取标签值
- C#创建图片验证码
- C#中的is和as操作符