博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#Nullable<T>可空的值类型,C#中的?使用整理
阅读量:4287 次
发布时间:2019-05-27

本文共 1150 字,大约阅读时间需要 3 分钟。

一、Nullable<T>可空类型,指定一个值类型可以分配null

在C#中Nullable<T>用于表示该类型是可以为空的一个类型。它被定义为结构(struct)而非一个类(class)....

语法 T? 是 System.Nullable<T> 的简写,此处的 T 为值类型。这两种形式可以互换,例如:Nullable<int>简写为int?

可空类型可表示一个值,或表示不存在任何值。例如,类似 String 的引用类型就是可空类型,而类似 Int32 的值类型不是可空类型。Nullable 结构支持将值类型扩展为可以为null,但不支持在引用类型上使用,因为引用类型本身就是可空的。

比较常用的场景是对应数据库表中可用字段。

//    // 摘要:    //     表示可分配有 null 的值类型。    //    // 类型参数:    //   T:    //     System.Nullable`1 泛型类型的基础值类型。    public struct Nullable
where T : struct { // // 摘要: // 将 System.Nullable`1 结构的新实例初始化为指定值。 // // 参数: // value: // 一个值类型。 [TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")] public Nullable(T value);
实例:

Nullable
number1 = null;//或者//int? number1 = null;Console.WriteLine(number1);number1 = 2;Console.WriteLine(number1);

二、C#中还有一种??,双问号这是C#6.0添加的Null值得条件操作符

??在赋值语句中使用,如果当前变量为Null,赋值右边的结果。

这个运算符可以解决三目运算符中可空类型判断问题:

int num = number1 == null ? 0 : number1.Value;
这种写法在语法上出错。

int num = number1 ?? 1;
这种写法正确。
实例:

int? number1 = null; int num = number1 ?? 1; Console.WriteLine(number1); 更多:

转载地址:http://bjogi.baihongyu.com/

你可能感兴趣的文章
智慧园区导航可视化分析平台技术方案
查看>>
智慧停车场综合解决方案
查看>>
疫情防控三维GIS时空分析系统设计
查看>>
python实现判断某天是否是节假日
查看>>
python根据日期计算昨天、明天日期
查看>>
pandas填充缺失值
查看>>
No matching distribution found for docx(配置cmd控制台代理)
查看>>
pycharm 无法安装模块 nothing to show
查看>>
ModuleNotFoundError: No module named 'exceptions'
查看>>
pandas corr()函数
查看>>
香农熵概念理解
查看>>
pycharm调试步骤(详细)
查看>>
交叉验证
查看>>
matplotlib绘制横向柱状图
查看>>
python函数 range()和arange()
查看>>
linux容器安装cmake
查看>>
win10安装pyhive包
查看>>
must be str,not int
查看>>
crontab使用方法
查看>>
一元线性回归原理及python简单实现
查看>>