可以为null的容器对象, 它保存类型T的值,isPresent判断,如果存在,get返回
Optional 对 T value 做了封装,如下 容器
public final class Optional<T> {
/**
* Common instance for {@code empty()}.
*/
private static final Optional<?> EMPTY = new Optional<>();
/**
* If non-null, the value; if null, indicates no value is present
*/
private final T value;
of不能为空
public static <T> Optional<T> of(T value) {
return new Optional<>(value);
}
private Optional(T value) {
this.value = Objects.requireNonNull(value);
}
泛型与 null