Tlo*_*loz 1 java spring optional
我有一个对象,我正在通过rest呼叫进行检索。我需要一个对象。
final Optional<A> aResponse = Optional.ofNullable(restTemplate.getForObject(uri, A.class));
在class中A,它B内部有一个类型的对象。无论出于何种原因,此对象都可以为null。
我试图尽可能安全地查询它,以免出现空指针异常。我尝试这样做:
final Optional<B> bType = aResponse.map(A::getB)
.orElseGet(() -> {
return Optional.empty();
});
Run Code Online (Sandbox Code Playgroud)
但它似乎不起作用。它发出以下消息:Required B but empty was inferred to Optional<T> no instances.
您不必致电orElseGet,只需:
final Optional<B> bType = aResponse.map(A::getB);
Run Code Online (Sandbox Code Playgroud)
mapOptional如果被调用的实例为空,则已经返回。
的Javadoc map:
返回:一个Optional,它描述将映射函数应用于此Optional的值的结果(如果存在一个值),否则为空
| 归档时间: |
|
| 查看次数: |
55 次 |
| 最近记录: |