有人可以帮我处理下面的代码吗?我想要一个等效的使用Optional函数。
public String getMyRequiredValue(Optional<String> value) {
if(value.isPresent()) {
Optional<String> optionVal = getAnotherValue(value.get());
if(optionVal.isPresent()) {
return optionVal.get();
} else {
return null;
}
} else {
return "Random";
}
}
public Optional<String> getAnotherValue(String value) { ... }
只是一个说明我试过这个,但它不起作用
return value.map(lang -> getAnotherValue(lang).orElse(null)).orElse("Random");
不起作用的是 - 当值存在并getAnotherValue返回时,Optional.empty()我希望原始函数返回null。它"Random"现在正在返回。
我的假设是因为该map方法返回null它被替换为"Random".
请注意,原始代码是由其他人编写的。因为它有很多依赖项,所以我无法更改输入/输出参数。:(
HUWWW
相关分类