在C#8.0中是否存在针对非null的“检查并获取”运算符?

问题描述 投票:0回答:1

关于检查类型,我们只有一个运算符,它可以一次有效地执行两件事:

if (GetObject() is DateTimeOffset dto)
{
   // use dto here
}

在此示例中,不仅dto具有特定的类型DateTimeOffset,而且该值是局部的,并且已被完全评估。

那么,C#8.0是否提供类似的运算符来检查非空值?

if (GetPossibleNull() is not null x)
{
  // x is local, evaluated and guaranteed to be not-null
}
c# nullable c#-8.0
1个回答
3
投票

您可以使用空的属性模式({})来检查变量是否不是null

© www.soinside.com 2019 - 2024. All rights reserved.