Java 8 的 Stream 不好调试?别逗了!IDEA 调试就能轻松搞定!!

关注,推送更多 Java 干货!d80c620fc91422a4fbecb3fdea04692c.png

来源:blog.youkuaiyun.com/qq_29879799/article/details/105146415

java的stream编程给调试带来了极大的不便,idea 推出了streamtrace功能,可以详细看到每一步操作的关系、结果,非常方便进行调试。

初遇StreamTrace

这里简单将字符串转成它的字符数,并设置断点开启debug模式。

6e851d135c1d18785ce64ce9a4e79c99.png

如上图所示,可以看到每一步操作的元素个数、操作的结果、元素转换前后的对应关,非常清晰明了;还可以查看具体的对象内容。最新面试题整理好了,点击Java面试库小程序在线刷题。

使用StreamTrace

StreamTrace只有在debug模式下才能使用,当在Stream代码上设置断点后,启动debug,点击流按钮,如图所示。

887c5b0b89ad6d91888c91b177178942.png

点击后,默认Split 模式显示。

4d195dd576d3d508dda42c3ba99f3f92.png

可以点击左下方按钮切换到FlatMode模式,当然也可以再切换回去。

907792a2ba6f0bfb0202c0868f0f6707.png

实战演示

这里演示一段字符转长度并过滤长度小于5的stream操作

@Test
    public void TestTrace() {
        Stream.of("beijing","tianjin","shanghai","wuhan")
                .map(String::length)
                .filter(e->e>5)
                .collect(Collectors.toList());
    }
54b854f19913e6ff395f75346bea63c6.png

最近好文分享


一个分享Java核心技术干货的公众号

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值