请解释 C# 中可空类型的概念,并说明其用途。
考察说明
考查对 C# 可空类型概念及用法的理解。
回答思路
- 【回答框架 1】可空类型是 C# 中允许值类型变量接受 null 值的机制,其本质是 Nullable<T> 结构体,用于表示可能缺失或未知的值。
- 【回答框架 2】使用方式是在值类型后加 ? 声明,例如 int? 表示可空整数。它有两个重要属性:HasValue 判断是否有值,Value 获取实际值,若 HasValue 为 false 则访问 Value 会抛出异常。
- 【回答框架 3】可空类型常用于数据库字段、可选参数或需要表示无值状态的场景。使用时可通过 GetValueOrDefault 方法安全获取值,或使用 ?? 运算符提供默认值。
- 【回答框架 4】需要注意可空类型只能用于值类型,引用类型本身已支持 null;且可空类型在装箱后,有值和无值在运行时表现不同。
- 【关键点 1】可空类型通过 Nullable<T> 实现,允许值类型为 null。
- 【关键点 2】HasValue 和 Value 是核心属性,使用需检查 HasValue。
- 【关键点 3】GetValueOrDefault 和 ?? 运算符可安全获取值或默认值。
- 【关键点 4】可空类型仅适用于值类型。