欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java8中orElse orElseGet orElseThrow的使用舉例

 更新時(shí)間:2025年09月16日 12:07:43   作者:chushiyunen  
這篇文章主要介紹了Java8中orElse orElseGet orElseThrow的使用舉例,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

這3個(gè)都是用來處理null的情況:
orElse 用的是括號(hào)內(nèi)的對象
orElseGet 用的是Supplier接口返回的對象。 supplier接口就一個(gè)get方法。
無入?yún)?,出參要和Optional的對象同類型。
orElseThrow 用的是Supplier接口返回的對象,這個(gè)對象必須要實(shí)現(xiàn)Throwable。 supplier接口就一個(gè)get方法。 無入?yún)ⅲ鰠⒁獙?shí)現(xiàn)Throwable.

orElse 代碼

//orElse 有,就用自身值。  為null,就用orElse后面的值。
//有正品用正品,沒正品用替代品
System.out.println(Optional.ofNullable("正品").orElse("替代品"));  // orElse
System.out.println(Optional.ofNullable(null).orElse("替代品"));

orElseGet代碼

// orElseGet 它可以傳入一個(gè)supplier接口,里面可以花樣實(shí)現(xiàn)邏輯
System.out.println(Optional.ofNullable("寶馬").orElseGet(()->"走路"));  // 有寶馬就不用走路
System.out.println(Optional.ofNullable(null).orElseGet(()->"自行車"));  // 沒寶馬,可以騎自行車
System.out.println(Optional.ofNullable(null).orElseGet(()->"電動(dòng)車"));  // 沒寶馬,也可以騎電動(dòng)車

有人會(huì)說orElse和orElseGet沒看出有什么區(qū)別啊。
區(qū)別是orElseGet可以傳入一個(gè)接口,來定制邏輯。

orElseThrow代碼

// 有錢就沒異常
try {
    System.out.println(Optional.ofNullable("錢").orElseThrow(()->new Exception()));  // 有錢不會(huì)拋異常
} catch (Throwable throwable) {
    throwable.printStackTrace();
}
// 沒錢就會(huì)拋異常
try {
    System.out.println(Optional.ofNullable(null).orElseThrow(()->new Exception()));  // 沒錢拋異常
} catch (Throwable throwable) {
    throwable.printStackTrace();
}

到此這篇關(guān)于Java8中orElse orElseGet orElseThrow的使用舉例的文章就介紹到這了,更多相關(guān)java orElse orElseGet orElseThrow使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot中@EnableAutoConfiguration注解的實(shí)現(xiàn)

    SpringBoot中@EnableAutoConfiguration注解的實(shí)現(xiàn)

    Spring Boot@EnableAutoConfiguration是一個(gè)強(qiáng)大的工具,可以簡化配置過程,從而實(shí)現(xiàn)快速開發(fā),本文主要介紹了SpringBoot中@EnableAutoConfiguration注解的實(shí)現(xiàn),感興趣的可以了解一下
    2024-01-01
  • 解決idea?中?SpringBoot?點(diǎn)擊運(yùn)行沒反應(yīng)按鈕成灰色的問題

    解決idea?中?SpringBoot?點(diǎn)擊運(yùn)行沒反應(yīng)按鈕成灰色的問題

    在使用 Spring Boot 開發(fā)項(xiàng)目時(shí),可能會(huì)遇到一個(gè)問題:點(diǎn)擊運(yùn)行按鈕后,控制臺(tái)沒有任何輸出,項(xiàng)目界面也沒有顯示,這種情況可能是由多種原因?qū)е碌?,本文將介紹一些常見的解決方法,需要的朋友可以參考下
    2023-08-08
  • Java中將異步調(diào)用轉(zhuǎn)為同步的五種實(shí)現(xiàn)方法

    Java中將異步調(diào)用轉(zhuǎn)為同步的五種實(shí)現(xiàn)方法

    本文介紹了將異步調(diào)用轉(zhuǎn)為同步阻塞模式的五種方法:wait/notify、ReentrantLock+Condition、Future、CountDownLatch和CyclicBarrier,每種方法都有其適用場景和核心機(jī)制,可以根據(jù)具體需求選擇合適的方法,需要的朋友可以參考下
    2025-02-02
  • Spring容器獲取Bean的9種方式總結(jié)

    Spring容器獲取Bean的9種方式總結(jié)

    本文為大家整理匯總了常見的獲取Bean的方式,并提供一些優(yōu)劣分析,方便大家在使用到時(shí)有更好的選擇,同時(shí),也會(huì)為大家適當(dāng)?shù)钠占昂屯卣挂恍┫嚓P(guān)知識(shí),需要的可以參考一下
    2023-07-07
  • SpringBoot 下集成緩存工具類 CacheManager

    SpringBoot 下集成緩存工具類 CacheManager

    這篇文章主要介紹了Springboot下集成緩存工具類CacheManager,想進(jìn)一步了解相關(guān)知識(shí)的同學(xué),可以詳細(xì)閱讀本文
    2023-03-03
  • Java數(shù)據(jù)結(jié)構(gòu)與算法之棧(Stack)實(shí)現(xiàn)詳解

    Java數(shù)據(jù)結(jié)構(gòu)與算法之棧(Stack)實(shí)現(xiàn)詳解

    這篇文章主要為大家詳細(xì)介紹了Java數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)筆記第二篇,Java數(shù)據(jù)結(jié)構(gòu)與算法之棧Stack實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • java 取出文本文件中空行的實(shí)例代碼

    java 取出文本文件中空行的實(shí)例代碼

    這篇文章介紹了java 取出文本文件中空行的實(shí)例代碼,有需要的朋友可以參考一下
    2013-09-09
  • Java基于Rest?Assured自動(dòng)化測試接口詳解

    Java基于Rest?Assured自動(dòng)化測試接口詳解

    Rest Assured 是一個(gè)基于 Java 的流行的用于測試 RESTful API 的庫。這篇文章主要介紹了Java如何基于Rest?Assured實(shí)現(xiàn)自動(dòng)化測試接口,需要的可以參考一下
    2023-03-03
  • Java獲取Object中Value的實(shí)現(xiàn)方法

    Java獲取Object中Value的實(shí)現(xiàn)方法

    本文介紹了在Java中獲取對象屬性值的幾種常見方法,包括使用反射機(jī)制、getter方法、接口或抽象類、Map數(shù)據(jù)結(jié)構(gòu)、序列化與反序列化以及JavaBeans規(guī)范,每種方法都有其適用場景和優(yōu)缺點(diǎn),選擇合適的方法取決于具體需求
    2025-03-03
  • SpringBoot集成kafka全面實(shí)戰(zhàn)記錄

    SpringBoot集成kafka全面實(shí)戰(zhàn)記錄

    在實(shí)際開發(fā)中,我們可能有這樣的需求,應(yīng)用A從TopicA獲取到消息,經(jīng)過處理后轉(zhuǎn)發(fā)到TopicB,再由應(yīng)用B監(jiān)聽處理消息,即一個(gè)應(yīng)用處理完成后將該消息轉(zhuǎn)發(fā)至其他應(yīng)用,完成消息的轉(zhuǎn)發(fā),這篇文章主要介紹了SpringBoot集成kafka全面實(shí)戰(zhàn),需要的朋友可以參考下
    2021-11-11

最新評論