java的stream編程給調(diào)試帶來了極大的不便,idea 推出了streamtrace功能,可以詳細看到每一步操作的關(guān)系、結(jié)果,非常方便進行調(diào)試。初遇StreamTrace這里簡單將字符串轉(zhuǎn)成它的字符數(shù),并設(shè)置斷點開啟debug模式。

如上圖所示,可以看到每一步操作的元素個數(shù)、操作的結(jié)果、元素轉(zhuǎn)換前后的對應(yīng)關(guān),非常清晰明了;還可以查看具體的對象內(nèi)容。
使用StreamTraceStreamTrace只有在debug模式下才能使用,當(dāng)在Stream代碼上設(shè)置斷點后,啟動debug,點擊流按鈕,如圖所示。

點擊后,默認(rèn)Split 模式顯示。

可以點擊左下方按鈕切換到FlatMode模式,當(dāng)然也可以再切換回去。

實戰(zhàn)演示這里演示一段字符轉(zhuǎn)長度并過濾長度小于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)注
20文章
3005瀏覽量
116787 -
字符串
+關(guān)注
關(guān)注
1文章
596瀏覽量
23209 -
Stream
+關(guān)注
關(guān)注
0文章
21瀏覽量
8257 -
idea
+關(guān)注
關(guān)注
1文章
70瀏覽量
5040
原文標(biāo)題:Java 8 的 Stream 不好調(diào)試?別逗了!IDEA 調(diào)試就能輕松搞定??!
文章出處:【微信號:AndroidPush,微信公眾號:Android編程精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
Stream API原理介紹
如何利用Stream API來優(yōu)化Java代碼
JDK8 Stream數(shù)據(jù)流效率分析
Java 8 Stream之collect()的奇技淫巧
怎么使用Java8的Stream API比較兩個List的差異呢?
Java8的Stream流 map() 方法
Java的Stream的常用知識
java的stream編程調(diào)試技巧
評論