Java基礎(chǔ)學習:java空指針異常避免

Java基礎(chǔ)學習:java空指針異常避免

天津卓眾教育      2022-05-02 03:35:01     29

Java基礎(chǔ)學習:java空指針異常避免,在上篇文章Java8新特性指導手冊中簡單的提了一下如何通過Optional類來對對象做空校驗。接下來,我們再細說一下:業(yè)務(wù)中,假設(shè)我

課程價格 請咨詢

上課時段: 授課校區(qū):

詳細介紹

    在上篇文章Java8新特性指導手冊中簡單的提了一下如何通過Optional類來對對象做空校驗。接下來,我們再細說一下:

    業(yè)務(wù)中,假設(shè)我們需要獲取Outer對象對底層的Inner中的foo屬性,我們必須寫一堆的非空校驗,來防止發(fā)生NullPointerException:

    通過Optional

    在Java8中,我們有更優(yōu)雅的解決方式,那就是使用Optional是說,我們可以在一行代碼中,進行流水式的map操作。而map方法內(nèi)部會自動進行空校驗:

    通過suppiler函數(shù)自定義方法

    上面這種方式個人感覺還是有點啰嗦,我們可以利用suppiler函數(shù)來出一個終極解決方案:

    

    利用上面的resolve方法來重構(gòu)上述的非空校驗代碼段:

    最后

    你需要知道的是,上面這兩個解決方案并沒傳統(tǒng)的null檢查性能那么高效。但在絕大部分業(yè)務(wù)場景下,舍棄那么一丟丟的性能來方便編碼,是完全可取,除非是那種對性能有嚴格要求的,我們才不建議使用。

 以上就是天津卓眾教育java培訓機構(gòu)的小編針對“Java基礎(chǔ)學習:java空指針異常避免”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。

Java基礎(chǔ)學習

培訓啦提醒您:交易時請核實對方資質(zhì),對于過大宣傳或承諾需謹慎!任何要求預付定金、匯款等方式均存在風險,謹防上當。