新语法类似于Dropthings中的Nullabletype
本文关键字:Dropthings 中的 Nullabletype 类似于 语法 新语法 | 更新日期: 2023-09-27 18:05:51
我最近下载了Dropthings portal,在代码中发现了一个新的语法。
ConfigurationManager.AppSettings["t"] ?? string.Empty
我想知道它是否类似于NULLABLE类型,如果配置…为NULL,则使用此值。有人能澄清我的观察吗,因为我在MSDN中也找不到一个等效的例子?
是的,你是对的,
a ?? b
表示a
不为空时为a
,为
b
。相当于a == null ? b : a
代码中的??
实际上是c#语言内置的一个特性。它被称为空合并算子。你可以在任何c#代码中使用它。
string someValue = null;
Console.WriteLine(someValue ?? "Default Value"); //Default Value
例子? ?操作符称为空合并操作符,用于为可空值类型或引用类型定义默认值。如果操作数不为空,则返回左操作数;否则返回正确的操作数
int? x = null;
// y = x, unless x is null, in which case y = -1.
int y = x ?? -1;
请参阅ScottGu的博客,查看该操作符的简单说明