java.util.Optional
是 Java 8 引入的一個容器類,用于表示可能包含或不包含非空值的對象。它的設計初衷是為了減少程序中的空指針異常(NullPointerException),并使代碼更加簡潔和易讀。
Optional
類的介紹
1. 特點
- 避免顯式的 null 檢查:使用
Optional
可以避免顯式的 null 檢查,從而減少空指針異常。 - 提供有意義的返回值:當一個方法可能不返回有效值時,可以使用
Optional
作為返回類型,而不是返回 null。 - 更好的代碼可讀性:通過一組流式 API 方法,可以使代碼更具可讀性和表達力。
2. 主要方法
empty()
: 返回一個空的Optional
實例。of(T value)
: 返回一個包含指定值的Optional
,如果值為 null 則拋出NullPointerException
。ofNullable(T value)
: 返回一個包含指定值的Optional
,如果值為 null 則返回一個空的Optional
。isPresent()
: 如果值存在則返回 true,否則返回 false。ifPresent(Consumer<? super T> consumer)
: 如果值存在則執行指定的消費