JAVA强制立即输出,如何在Java8中强制立即评估流

我想知道如何强制立即评估

Java8中的每个map函数?我现在的情况是我需要进行多级转换(来自ObjectA – > ObjectB – > ObjectC – > ObjectD),并且对于某些对象,在此转换的每个级别上都可能存在失败(抛出异常) .例如

// stream -> map -> collect sequence

lists.stream()

.map(aToB)

.collect(Collectors.toList())

.stream()

.map(bToC)

.collect(Collectors.toList())

.stream()

.map(cToD)

.collect(Collectors.toList())

// Try api is from javaslangs

Function aToB = a -> Try.of(() -> .....)

.onFailure(....)

.get();

Function bToC = b -> Try.of(() -> .....)

.onFailure(....)

.get();

Function cToD = c -> Try.of(() -> .....)

.onFailure(....)

.get();

我想测试我的单元测试中的每个转换,例如测试是否测试抛出异常,以及如果A在将A转换为B之类的异常时未成功转换为C,但是使用惰性求值,则无法测试,我能想到的唯一方法是做这个序列的steam() – > map(…) – >收集(…)电话强制立即评估.我想知道是否有更好的方式来写这个.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值