gpt4 book ai didi

java - 是否可以使用 Optional.ofNullable 来检查是否为 null 并分配默认值

转载 作者:塔克拉玛干 更新时间:2023-11-01 23:02:13 26 4
gpt4 key购买 nike

我的代码从数据库中读取一些配置值。如果它们未定义(通过 getValueFromDB 方法返回 null),我想将它们默认为配置文件中定义的值。

是否可以对所有出现的 getValueFromDB() 使用 Optional.ofNullable().OrElse() 进行 null 检查并在 null 的情况下分配默认值.或者这是对 Optional 的误用/滥用?

最佳答案

好吧,我们在我们的代码库中疯狂地使用这个习语 - 我认为它没有任何问题。这就是 Optional 对我来说的意义所在——无论是否存在某些值,都会强制您采取行动;我绝对喜欢的是它是用 java-8 语言本身构建的,我不必为此引入其他方法(或像 guava 这样的库) .

您可能正在考虑这里的这个简单案例,但是 Optional 显然还有 other 链式方法,所以我可以这样做:

Optional.ofNullalbe(dbPass)
.map(// do mapping)
.filter(// do filtering)
.ifPresent(x -> // log it )

您无法使用其他方法轻松实现这一目标。

关于java - 是否可以使用 Optional.ofNullable 来检查是否为 null 并分配默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47466668/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com