深入理解 C# null! 语句
C# 8.0 中的 null!
语句是一个强大的工具,允许开发人员抑制特定表达式的空引用检查。但是,在使用它之前,务必了解其工作原理及其影响。
空值容忍运算符
null!
语句使用空值容忍运算符(!
)。此运算符具有双重功能,具体取决于其上下文。当应用于类型时,它会将该类型的可空性从可空更改为不可空。这称为空值容忍运算符。
抑制空值检查
当应用于表达式(例如 null!
)时,空值容忍运算符会抑制该特定表达式的空值检查。这会覆盖表达式的可空性,允许将其作为不可空值用于该特定操作。
技术解释
C# 8.0 引入了可空引用类型以提高空值安全性。默认情况下,所有引用类型都是不可空的,这意味着它们不能保存空值。?
和 !
运算符可以覆盖此默认设置。
?
运算符将类型标记为可空,允许其保存空值。另一方面,!
运算符将类型标记为不可空,确保它不能保存空值。
何时使用 null!?
应谨慎使用 null!
语句,并且应尽量避免过度使用。它主要用于以下场景:
示例:理解 null! 语句
在您提供的代码中:
FirstName { get; }
声明为不可空字符串,这意味着它不能保存空值。LastName { get; } = null!
将 LastName
属性声明为不可空,尽管最初将其赋值为 null。通过使用 null!
,您可以覆盖默认可空性并确保此属性被视为不可空。以上是何时以及为何应使用 C# null!操作员?的详细内容。更多信息请关注PHP中文网其他相关文章!