新语法类似于Dropthings中的Nullabletype

本文关键字:Dropthings 中的 Nullabletype 类似于 语法 新语法 | 更新日期: 2023-09-27 18:05:51

我最近下载了Dropthings portal,在代码中发现了一个新的语法。

ConfigurationManager.AppSettings["t"] ?? string.Empty

我想知道它是否类似于NULLABLE类型,如果配置…为NULL,则使用此值。有人能澄清我的观察吗,因为我在MSDN中也找不到一个等效的例子?

新语法类似于Dropthings中的Nullabletype

是的,你是对的,

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的博客,查看该操作符的简单说明