Optional.ofNullable(T value).orElse(T other) 是 Java 8 引入的 Optional 类的一个常见用法,它允许你以更优雅的方式处理可能为 null 的值。
这里是它的基本工作原理:
Optional.ofNullable(T value): 这个方法会尝试将给定的值(可能是null)封装成一个Optional对象。如果值是null,那么你会得到一个空的Optional对象;否则,你会得到一个包含该值的Optional对象。orElse(T other): 如果Optional对象包含值(即它不是空的),那么这个方法会返回该值。否则,它会返回你提供的默认值(other)。
以下是一个简单的示例:
String possiblyNull = getSomeStringThatCouldBeNull(); // 可能返回 null
// 使用 Optional.ofNullable 和 orElse
String result = Optional.ofNullable(possiblyNull).orElse("默认值");
// 如果 possiblyNull 是 null,那么 result 将是 "默认值"
// 如果 possiblyNull 不是 null,那么 result 将是 possiblyNull 的值
在这个例子中,我们避免了直接的 null 检查,并使用了 Optional 来更清晰地表达我们的意图。虽然对于简单的 null 检查,使用 Optional 可能看起来有些冗长,但在更复杂的逻辑中,它可以帮助你避免 NullPointerException 并使代码更具可读性。

0条评论
点击登录参与评论