當前位置: 妍妍網 > 碼農

今日程式碼 PK | 使用 Optional 判空

2024-03-20碼農

對於 Java 開發來說,判空可以說是一種素養,很多 bug 都是由空指標引起的。

為了避免空指標異常,我們通常會在使用物件前進行判空,

如果某個必要的物件為空,可以丟擲相應的異常。

範例程式碼如下:

Itemitem = itemService.lambdaQuery()
.eq(Item::getUserId, userId)
.eq(Item::getName, itemName)
.one();
if (item == null) {
thrownewRuntimeException();
}

當然還有另外一種使用 Optional 的方式,更加的簡潔,但是有一點的學習和熟悉成本,

範例程式碼如下:

Itemitem = Optional.ofNullable(itemService.lambdaQuery()
.eq(Item::getUserId, userId)
.eq(Item::getName, itemName)
.one())
.orElseThrow(RuntimeException::new);

大家更喜歡哪種呢?歡迎投票並在評論區留下自己的看法。

完整程式碼片段來源於程式碼小抄,歡迎點選進入小程式閱讀!

線上存取:https://www.codecopy.cn/post/iklcx9

更多優質程式碼歡迎進入小程式檢視!

往期推薦