深入理解 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中文網其他相關文章!