java8新特征—Optional总结

首先先介绍一下Optional,Optional就是一个容器对象。

个人理解,在日常开发中对其使用最多就是处理对象的空指针情况。

Optional有三种构造方法:

  

        ofNullable:这种允许传入的对象为null

        empty:这种创建出来的就是一个为空的对象

        of:这种不允许传入为null,如果为null会抛出空指针异常异常

常用的方法有:

orElse    如果值存在就将其值返回,否则返回传入的默认值
orElseGet    如果值存在就将其值返回,否则返回一个由指定的Supplier接口生成的值
orElseThrow    如果值存在就将其值返回,否则返回一个由指定的Supplier接口生成的异常
filter    如果值存在并且满足提供的谓词,就返回包含该Optional对象;否则返回一个空的Optional对象
flatMap    如果值存在,就对该值执行提供的mapping函数,将mapping函数返回值用Optional封装并返回,否则就返回一个空的Optional对象
map    如果值存在,就对该值执行提供的mapping函数调用,将mapping函数返回值用Optional封装并返回
get    如果值存在就返回该Optional对象,否则就抛出一个 NoSuchElementException异常
ifPresent    如果值存在就对该值执行传入的方法,否则就什么也不做
isPresent    如果值存在就返回true,否则就返回false

 

 


版权声明:本文为HDesigner原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。