提供用 java optional 优化if else的代码案例,并输出详细代码
时间: 2024-04-13 11:31:17 浏览: 128
当使用Java的Optional类来优化if-else语句时,你可以使用Optional的map()和orElse()方法。以下是一个示例代码:
```java
public class OptionalExample {
public static void main(String[] args) {
String name = "John";
// 使用if-else语句
String result;
if (name != null) {
result = "Hello, " + name + "!";
} else {
result = "Hello, Stranger!";
}
System.out.println(result);
// 使用Optional优化if-else语句
String result2 = Optional.ofNullable(name)
.map(val -> "Hello, " + val + "!")
.orElse("Hello, Stranger!");
System.out.println(result2);
}
}
```
在这个例子中,我们有一个名字变量`name`。首先,我们使用传统的if-else语句来检查`name`是否为空,如果不为空,我们将构建一个“Hello, name!”的字符串,否则我们将构建一个“Hello, Stranger!”的字符串。
然后,我们使用Optional类来优化这个if-else语句。我们使用`Optional.ofNullable(name)`来创建一个Optional对象,并使用`map()`方法将`name`映射为“Hello, name!”的字符串。如果`name`为空,或者映射失败,我们使用`orElse()`方法设置默认值为“Hello, Stranger!”。
最后,我们输出两个结果,它们应该是相同的。这种使用Optional优化if-else语句的方法可以使代码更简洁和可读性更好。
阅读全文