如何将字符串文本添加到orElse和.map

时间:2018-12-16 16:51:40

标签: java android java-8 optional

在下面的代码中,我想向.map和.orElse都添加一条日志语句,以指示该值是否为true / false。换句话说,我想在.map中添加     “ ........ true”

里面,否则我要添加     “ ........假”

如何修改belwo代码以包括上述两个字符串。

代码

return OptionalsUtils.toOptional(this.getBuiltMovieRoomPersistentDatabase())
            .map(builderObj -> builderObj.isOpen())
            .orElse(false);

1 个答案:

答案 0 :(得分:3)

您可以使用Optional.orElseGet来实现,它期望Supplier为:

return OptionalsUtils.toOptional(this.getBuiltMovieRoomPersistentDatabase())
        .map(builderObj -> {
            System.out.println("Its true here.");
            return builderObj.isOpen();
        })
        .orElseGet(() -> {
            System.out.println("Its false here");
            return false;
        });