ofNullable()
用来进行null值处理,如果传入null,函数内部会创建一个Optional对象,避免了NullPointerException问题
of()
Java中的java.util.Optional类的of()方法用于获取具有指定类型的指定值的Optional类的实例。
如果指定的值为null,则此方法将引发NullPointerException。
isPresent()
Java中的java.util.Optional类的isPresent()方法用于确定此Optional实例中是否存在值。如果此Optional实例中不存在任何值,则此方法返回false,否则返回true。
返回值:此方法返回一个布尔值,该布尔值说明此Optional实例中是否存在一个值。
ifPresentOrElse()
java.util.Optional类的ifPresentOrElse(Consumer,Runnable)方法可帮助我们执行此Optional对象的值的指定Consumer操作。如果此Optional中不存在值,则此方法执行给定的基于空的Runnable emptyAction,作为第二个参数传递
orElseGet() 和 orElse()
- orElse():
先注意:orElse()参数是传递一个值。
如果orElse()函数中执行的是一个函数,无论ofNullable(param)中param是不是为null,都会执行orElse()中的函数。
但是需要注意的是:如果param为null,orElse()的结果(执行的函数的返回值会被使用);
如果param不为null,orElse()的结果不会被执行,但是orElse调用的函数处理过程依然会执行,只是结果不会被使用。 - orElseGet():
先注意:orElseGet()参数是传递一个函数。
传入函数的情况,就意味则需要的时候才会调用函数,不需要时就不会调用。出入值得话 就是在调用方法之前,这个值已经是确定的了,也就说这个值已经是经过运算了。
如果ofNullable(param)中param为null,才会执行orElseGet()中的函数;param不为null,则不会执行orElseGet()中的函数。