Java 8可选.map()。orElse始终返回orElse

时间:2020-06-02 09:24:31

标签: java java-8 optional

我正在尝试从软件包中获取版本,但是在实现它时遇到了麻烦。 此代码返回正确的包:

<div><span></span></div>

但是我认为这样做会更整洁

react-markdown

但是,getVersionWithMap()始终返回空字符串“”。


编辑: 解决了。最终成为错误的前端。回到使用getVersion()之后,发现此问题,并且前端出现相同版本的无可见版本。

2 个答案:

答案 0 :(得分:4)

如果cl.getPackage().getImplementationVersion()返回一个null值,则第二个代码将调用orElse(),因为map()的结果为空的Optional

在不是这样的第一个代码中,您将直接从方法中返回null。您正在比较两个不同的代码。

答案 1 :(得分:0)

这两个函数都可以工作,问题出在别的地方,并且假设修复程序就在这里,所以我没有对该部分进行测试。我不好。