我有几个方法,每个方法都返回一个可选的字符串。如何将它们组合起来,以便java调用每个方法,直到找到结果为止?
我想最终得到类似这样的东西,但是没有 "orElseFlatMap()" 方法:
我想最终得到类似这样的东西,但是没有 "orElseFlatMap()" 方法:
import java.util.Optional;
public class OptionalCascade {
public static void main(String[] args) {
Optional<String> result =
// try to get a result with method A
methodA()
// if method A did not return anything, then try method B
.orElseFlatMap(methodB());
}
static Optional<String> methodA() {
return Optional.empty();
}
static Optional<String> methodB() {
return Optional.empty();
}
}
orElseGet(() -> methodB()
)。 - Marko Topolnik