optional.ofnullable()和of()
时间: 2023-09-25 16:14:12 浏览: 45
`Optional.ofNullable()` 和 `Optional.of()` 是 Java 8 中 `Optional` 类的两个静态方法,用于创建一个可能为空的 `Optional` 对象。
`Optional` 是一个容器类,它可以包含一个非空的值或者为空。它提供了一些方法来处理可能为空的值,避免了空指针异常。
`Optional.ofNullable()` 方法接受一个参数,并返回一个包含该参数的 `Optional` 对象。如果参数为空,则返回一个空的 `Optional` 对象。
示例代码:
```java
String str = "Hello";
Optional<String> optional1 = Optional.ofNullable(str);
System.out.println(optional1); // 输出 Optional[Hello]
String str2 = null;
Optional<String> optional2 = Optional.ofNullable(str2);
System.out.println(optional2); // 输出 Optional.empty
```
`Optional.of()` 方法接受一个非空的参数,并返回一个包含该参数的 `Optional` 对象。如果参数为空,则会抛出 `NullPointerException`。
示例代码:
```java
String str = "Hello";
Optional<String> optional1 = Optional.of(str);
System.out.println(optional1); // 输出 Optional[Hello]
String str2 = null;
Optional<String> optional2 = Optional.of(str2); // 抛出 NullPointerException
```
总结来说,`Optional.ofNullable()` 适用于处理可能为空的值,而 `Optional.of()` 适用于处理非空的值。