Java可选:flatmap和OrelGet
我已经编码好了:Java可选:flatmap和OrelGet,java,java-stream,Java,Java Stream,我已经编码好了: Optional.ofNullable(this.cache.get(id)) .orElseGet(this.referenceService.get(id)); 问题是this.referenceService.get返回可选的 因此,我得到了以下信息: 从java 9开始,您可以使用OrelGetSupplier方法 从Java9开始,您可以使用 如果您使用的是Java 9,那么您可以访问Optional.or,它接受供应商 如果不是,则以下模式有效: Opti
Optional.ofNullable(this.cache.get(id))
.orElseGet(this.referenceService.get(id));
问题是this.referenceService.get返回可选的
因此,我得到了以下信息:
从java 9开始,您可以使用OrelGetSupplier方法
从Java9开始,您可以使用
如果您使用的是Java 9,那么您可以访问Optional.or,它接受供应商 如果不是,则以下模式有效:
Optional.ofNullable(this.cache.get(id))
.orElseGet(() -> this.referenceService.get(id)
.orElseThrow(()-> new RuntimeException("Expected service to return something")));
如果您使用的是Java 9,那么您可以访问Optional.or,它接受供应商 如果不是,则以下模式有效:
Optional.ofNullable(this.cache.get(id))
.orElseGet(() -> this.referenceService.get(id)
.orElseThrow(()-> new RuntimeException("Expected service to return something")));
我想你必须调用.orElseGet->this.referenceService.getid。我想你必须调用.orElseGet->this.referenceService.getid。