Optional对null提供了一个更优雅的实现。
比如我们要判断str是否为空,为空则赋值为defalut,用之前的写法是这样:
if(str!=null && !“”.equlas(str)) {
} else {
str = “defalut”
}
但是,使用Oprional
Optional. ofNullable(str). orElse(“defalut”);
Optional的常用方法
of和ofNullable
of和ofNullable是用于创建Optional对象的,of不能创建null对象,而ofNullable可以。
Optional<String> str = Optional.of("sss");
//of参数为空,抛nullPointException
//Optional<String> str1 = Optional.of(null);
//ofNullable,参数可以为空,为空则返回值为空
Optional<String> str1 = Optional.ofNullable(null);
isPresent和get
isPresent是用来判断对象是否为空,get获得该对象。
if (str.isPresent()) {
System.out.println(str.get());
}
if (str1.isPresent()) {
System.