为了账号安全,请及时绑定邮箱和手机立即绑定

在并行流中遇到空对象时添加日志

在并行流中遇到空对象时添加日志

阿晨1998 2021-06-09 14:01:22
不确定这里的语法,对 lambda 表达式和排序不熟悉。            itemStream.parallel().filter(Objects::nonNull).forEach(                  (item) -> randomMethod(item));我之前在 for 循环中所做的是检查 null,然后在遇到 null 项时发出警告                    log.warn("Skipping a null item!");如何使用基于流的方法在遇到空对象(同时仍在过滤)时进行记录?
查看完整描述

3 回答

?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

随着.filter(Objects::nonNull)您过滤掉所有null元素并只保留非空元素,这意味着forEach您不会收到任何空元素,不用介意记录它。相反,你想要:


itemStream.parallel()

          .forEach(item -> { 

               if(Objects.isNull(item)) { ... } else { ... }; // or if(item == null) ...

          });


查看完整回答
反对 回复 2021-06-10
  • 3 回答
  • 0 关注
  • 194 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信