c# - C# 中的可空类型是什么?

标签 c#

当我们必须在 C#.net 中使用 nullable 类型时?谁能举例说明一下。

最佳答案

可空类型 (When to use nullable types)是可以将 null 作为值的值类型。它的默认值是 null 意味着你没有给它赋值。值类型的示例有 int、float、double、DateTime 等。这些类型具有这些默认值

int x = 0;
DateTime d = DateTime.MinValue;
float y = 0;

对于 Nullable 替代方案,以上任何一项的默认值为 null

int? x = null; //no value
DateTime? d = null; //no value

这使得它们表现得像引用类型,例如对象、字符串

string s = null;
object o = null;

当从数据库返回的值是 NULL 时,它们在处理数据库中的值时非常有用。想象一下数据库表中的一个整数值可能为 NULL,如果 c# 变量不可为空 - 常规整数,则只能用 0 表示。

另外,想象一个 EndDate 列,其值直到 future 的实际时间才确定。可以在数据库中将其设置为 NULL,但您需要一个可空类型来将其存储在 C# 中

DateTime StartDate = DateTime.Today;
DateTime EndDate? = null; //we don't know yet

关于c# - C# 中的可空类型是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13238059/

相关文章:

c# - 使用链接表时使用 LINQ 连接和分组多个表

c# - 如何使用 OleDbConnection 从 Excel 文件检索数据

c# - 如何在 C# 中使用多线程时循环列表

c# - 如何将枚举传递给函数以及如何在 if 语句 c# 中评估枚举

c# - 数据表未被填充

c# - 连接格式化字符串时出现问题

c# - 如何使用现有的 ToolStripRenderer 绘制托管的 NumericUpDown?

c# - 除了将所有内容添加到 Startup 类之外,是否有一种强大的方法可以在 ASP.NET Core 3.1 中注册依赖项?

c# - List<String[]> - 需要有关如何从 String[] 中提取记录的建议

c# - 更新云队列中的消息内容时出现异常