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

IntelliJ IDEA中如何調(diào)試Java Stream操作

 更新時(shí)間:2022年05月23日 16:44:39   作者:程序猿DD  
這篇文章主要介紹了IntelliJ IDEA中如何優(yōu)雅的調(diào)試Java Stream操作,在強(qiáng)大的IDEA插件支持下,stream的調(diào)試其實(shí)也沒那么難了,下面就來學(xué)習(xí)一下在IDEA中如何調(diào)試stream操作吧

Stream操作是Java 8推出的一大亮點(diǎn)!雖然java.util.stream很強(qiáng)大,但依然還是有很多開發(fā)者在實(shí)際工作中很少使用,其中吐槽最多的一個(gè)原因就是不好調(diào)試,一開始確實(shí)是這樣,因?yàn)閟tream這樣的流式操作在DEBUG的時(shí)候,是一行代碼,直接下一步的時(shí)候,其實(shí)一下就過去了好多操作,這樣我們就很難判斷到底是里面的哪一行出了問題。不過,現(xiàn)在的話,在強(qiáng)大的IDEA插件支持下,stream的調(diào)試其實(shí)也沒那么難了,下面就來學(xué)習(xí)一下在IDEA中如何調(diào)試stream操作吧。

插件:Java Stream Debugger

如果你用的IDEA版本比較新的話,這個(gè)插件已經(jīng)是自帶的了,就不需要安裝了。如果還沒安裝的話,就手工安裝一下,然后繼續(xù)下面的操作。

本文收錄在了我正在連載的《玩轉(zhuǎn)IDEA專欄》,該系列該用電子書的方式編寫,如果想要沉浸式閱讀學(xué)習(xí)的話,可以訪問Web版本:https://www.didispace.com/idea-tips/

調(diào)試Stream操作

視頻演示:點(diǎn)擊這里查看

先來看下面這樣的這段代碼:

public class StreamTest {
    @Test
    void test() {
        List<String> list = List.of("blog.didispace.com", "spring4all.com", "openwrite.cn", "www.didispace.com");

        List<String> result = list.stream()
                .filter(e -> e.contains("didispace.com"))
                .filter(e -> e.length() > 17)
                .toList();

        System.out.println(result);
    }
}

這段代碼的邏輯是通過stream去過濾list集合中的元素,由于有兩個(gè)filter,所以當(dāng)出現(xiàn)問題的時(shí)候,可能不知道具體是哪個(gè)filter中出了問題。

借助強(qiáng)大的IDEA,我們?cè)谟龅絪tream的時(shí)候,只需要點(diǎn)擊下圖中的按鈕:

此時(shí)會(huì)彈出一個(gè)Stream操作的跟蹤窗口:

該窗口中的標(biāo)簽就是這個(gè)stream操作的每一步,我們可以通過點(diǎn)擊標(biāo)簽去查看每一步執(zhí)行前和執(zhí)行后的結(jié)果去判斷這里的filter是否執(zhí)行正確。

到此這篇關(guān)于IntelliJ IDEA中如何調(diào)試Java Stream操作的文章就介紹到這了,更多相關(guān)idea調(diào)試Java Stream操作內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于javassist進(jìn)行動(dòng)態(tài)編程過程解析

    基于javassist進(jìn)行動(dòng)態(tài)編程過程解析

    這篇文章主要介紹了基于javassist進(jìn)行動(dòng)態(tài)編程過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • 基于SpringBoot實(shí)現(xiàn)定時(shí)發(fā)送郵件過程解析

    基于SpringBoot實(shí)現(xiàn)定時(shí)發(fā)送郵件過程解析

    這篇文章主要介紹了基于SpringBoot實(shí)現(xiàn)定時(shí)發(fā)送郵件過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Java多例Bean的應(yīng)用場(chǎng)景-easyExcel導(dǎo)入

    Java多例Bean的應(yīng)用場(chǎng)景-easyExcel導(dǎo)入

    EasyExcel 是一個(gè)基于 Java 的簡單、省內(nèi)存的讀寫 Excel 的開源項(xiàng)目。這篇文章主要介紹了用easyExcel導(dǎo)入Java Bean的應(yīng)用場(chǎng)景,感興趣的朋友可以參考閱讀
    2023-04-04
  • Java數(shù)據(jù)結(jié)構(gòu)之優(yōu)先級(jí)隊(duì)列(堆)圖文詳解

    Java數(shù)據(jù)結(jié)構(gòu)之優(yōu)先級(jí)隊(duì)列(堆)圖文詳解

    優(yōu)先級(jí)隊(duì)列是比棧和隊(duì)列更專用的結(jié)構(gòu),在多數(shù)情況下都非常有用,下面這篇文章主要給大家介紹了關(guān)于Java數(shù)據(jù)結(jié)構(gòu)之優(yōu)先級(jí)隊(duì)列(堆)的相關(guān)資料,需要的朋友可以參考下
    2022-03-03
  • SpringBoot整合Drools的實(shí)現(xiàn)步驟

    SpringBoot整合Drools的實(shí)現(xiàn)步驟

    Drools是一個(gè)易于訪問企業(yè)策略、易于調(diào)整以及易于管理的開源業(yè)務(wù)規(guī)則引擎,符合業(yè)內(nèi)標(biāo)準(zhǔn),速度快、效率高。業(yè)務(wù)分析師或?qū)徍巳藛T可以利用它輕松查看業(yè)務(wù)規(guī)則,從而檢驗(yàn)是否已編碼的規(guī)則執(zhí)行所需的業(yè)務(wù)規(guī)則。本文將講述SpringBoot整合Drools的步驟
    2021-05-05
  • Java 實(shí)戰(zhàn)范例之精美網(wǎng)上音樂平臺(tái)的實(shí)現(xiàn)

    Java 實(shí)戰(zhàn)范例之精美網(wǎng)上音樂平臺(tái)的實(shí)現(xiàn)

    讀萬卷書不如行萬里路,只學(xué)書上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實(shí)戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+vue+Springboot+ssm+mysql+maven+redis實(shí)現(xiàn)一個(gè)前后端分離的精美網(wǎng)上音樂平臺(tái),大家可以在過程中查缺補(bǔ)漏,提升水平
    2021-11-11
  • 應(yīng)用Java泛型和反射導(dǎo)出CSV文件的方法

    應(yīng)用Java泛型和反射導(dǎo)出CSV文件的方法

    這篇文章主要介紹了應(yīng)用Java泛型和反射導(dǎo)出CSV文件的方法,通過一個(gè)自定義函數(shù)結(jié)合泛型與反射的應(yīng)用實(shí)現(xiàn)導(dǎo)出CSV文件的功能,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2014-12-12
  • Java中使用patchca生成超炫的驗(yàn)證碼

    Java中使用patchca生成超炫的驗(yàn)證碼

    這篇文章主要介紹了Java中使用patchca生成超炫的驗(yàn)證碼 的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • Java基礎(chǔ)之類型封裝器示例

    Java基礎(chǔ)之類型封裝器示例

    這篇文章主要介紹了Java基礎(chǔ)之類型封裝器,結(jié)合實(shí)例形式分析了java類型封裝相關(guān)原理與操作技巧,需要的朋友可以參考下
    2019-08-08
  • Spring?Mvc中CommonsMultipartFile的特性實(shí)例詳解

    Spring?Mvc中CommonsMultipartFile的特性實(shí)例詳解

    這篇文章主要給大家介紹了關(guān)于Spring?Mvc中CommonsMultipartFile特性的相關(guān)資料,SpringMVC擁有強(qiáng)大的靈活性,非侵入性和可配置性,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11

最新評(píng)論