Java Stream Optional:如何将多个内部 Optional 当前条件转换为 Optional.flatMap()

问题描述 投票:0回答:0

我正在尝试将多个 Optional isPresent 转换为 Optional.flatMap 但不知道如何去做。

private Optional<Commit> getCommit1 (String id, Integer number) {
    **Optional<Revision> revision = repository.findById(id,number);
    if (revision.isPresent()) {
        Optional<Commit> commit = commitRepository.findById(revision.get().getCommitId());
        if (commit.isPresent()) {
            return commit;
        }
    }
    return Optional.empty();**
}

我想将粗体部分转换为单个 Optional.flatMap 有人可以帮忙吗

java stream flatmap stream-operators
© www.soinside.com 2019 - 2024. All rights reserved.