深度空檢查:改良的方法
在程式設計中處理深度嵌套的屬性通常涉及繁瑣的空檢查。 使用鍊式 if
語句的傳統方法,例如:
<code>if (cake != null && cake.frosting != null && cake.frosting.berries != null) ...</code>
冗長且重複。 需要一個更優雅的解決方案。
使用語言功能簡化空檢查
對簡化空檢查的追求導致了專用語言功能和擴展方法的開發。 C# 的 null 條件運算子 ?.
就是一個很好的例子。
介紹空條件運算子?.
?.
運算子提供了一種簡潔的方法來處理屬性鏈中潛在的空值。上面的例子變成:
<code>cake?.frosting?.berries?.loader</code>
如果任何屬性為空,這會優雅地短路評估,立即返回null
。否則,它會傳回最終屬性的值。
?.
到 C# 的旅程
雖然最初考慮用於 C# 4,但 ?.
運算子已整合到 Roslyn 編譯器 (2014) 中,並隨後隨 Visual Studio 2015 一起發布。
使用的優點?.
?.
透過消除巢狀 if
語句顯著提高程式碼清晰度和可維護性。 總結
null 條件運算子 ?.
提供了一種進階的深度 null 檢查方法。 它包含在 C# 6 中,明顯提高了程式碼品質和可讀性,對於處理複雜物件結構的開發人員來說具有無價的價值。
以上是使用 Null 條件運算子「?.」進行深度 Null 檢查是否更好?的詳細內容。更多資訊請關注PHP中文網其他相關文章!