【发布时间】:2023-04-10 11:20:01
【问题描述】:
我正在寻找一种方法来根据值是否为空来设置变量的默认值。
有问题的值是一个双精度值,默认值(如果该值为空)应该是一个字符串。
我尝试使用以下方式,但失败了,因为 .orElse 需要一个双精度(又名与“值”相同的数据类型)。 我可以使用任何 Java 方法来实现这一点吗?
Double value = 8.0;
Optional.ofNullable(value).orElse("not found")
【问题讨论】:
-
一个好的旧三元怎么样?
(value != null) ? value : "not found" -
@David 给出类型错误
-
如果你想要一个字符串,只需将它转换或构建成一个字符串
(value != null) ? ""+value : "not found" -
这似乎是一个奇怪的概念——
double的默认值应该是String。为什么这很有用?