java的stream編程給調(diào)試帶來(lái)了極大的不便,idea 推出了streamtrace功能,可以詳細(xì)看到每一步操作的關(guān)系、結(jié)果,非常方便進(jìn)行調(diào)試。初遇StreamTrace這里簡(jiǎn)單將字符串轉(zhuǎn)成它的字符數(shù),并設(shè)置斷點(diǎn)開啟debug模式。
如上圖所示,可以看到每一步操作的元素個(gè)數(shù)、操作的結(jié)果、元素轉(zhuǎn)換前后的對(duì)應(yīng)關(guān),非常清晰明了;還可以查看具體的對(duì)象內(nèi)容。
使用StreamTraceStreamTrace只有在debug模式下才能使用,當(dāng)在Stream代碼上設(shè)置斷點(diǎn)后,啟動(dòng)debug,點(diǎn)擊流按鈕,如圖所示。
點(diǎn)擊后,默認(rèn)Split 模式顯示。
可以點(diǎn)擊左下方按鈕切換到FlatMode模式,當(dāng)然也可以再切換回去。
實(shí)戰(zhàn)演示這里演示一段字符轉(zhuǎn)長(zhǎng)度并過(guò)濾長(zhǎng)度小于5的stream操作
@Test publicvoidTestTrace(){ Stream.of("beijing","tianjin","shanghai","wuhan") .map(String::length) .filter(e->e>5) .collect(Collectors.toList()); }

審核編輯:湯梓紅
-
JAVA
+關(guān)注
關(guān)注
19文章
2980瀏覽量
105673 -
字符串
+關(guān)注
關(guān)注
1文章
587瀏覽量
20695 -
Stream
+關(guān)注
關(guān)注
0文章
21瀏覽量
8030 -
idea
+關(guān)注
關(guān)注
1文章
70瀏覽量
4386
原文標(biāo)題:Java 8 的 Stream 不好調(diào)試?別逗了!IDEA 調(diào)試就能輕松搞定!!
文章出處:【微信號(hào):AndroidPush,微信公眾號(hào):Android編程精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
Stream API原理介紹
如何利用Stream API來(lái)優(yōu)化Java代碼
JDK8 Stream數(shù)據(jù)流效率分析
Java 8 Stream之collect()的奇技淫巧
怎么使用Java8的Stream API比較兩個(gè)List的差異呢?
Java8的Stream流 map() 方法

Java的Stream的常用知識(shí)

評(píng)論