JDK8 Optional 用法
Optional类的用法
| 方法 | 描述 |
|---|---|
| empty | 返回一个空的Optional实例 |
| filter | 如果值存在并且满足提供的谓词,就返回包含该值的Optional对象;否则返回一个空的Optional对象 |
| flatMap | 如果值存在,就对该值执行提供的mapping函数调用,返回一个Optional类型的值,否则就返回一个空的Optional对象 |
| get | 如果值存在,就将被Optional封装的值返回,否则抛出一个NoSuchElementException异常 |
| ifPresent | 如果值存在,就执行使用该值的方法调用,否则什么也不做 |
| isPresent | 如果值存在就返回true,否则返回false |
| map | 如果值存在,就对该值执行提供的mapping函数调用 |
| of | 将指定用Optional封装之后返回,如果该值为null,则抛出一个NullPointerException异常 |
| ofNullable | 将指定值用Optional封装之后返回,如果该值为null,则返回一个空的Optional对象 |
| orElse | 如果有值则将其返回,否则返回一个默认值 |
| orElseGet | 如果有值则将其返回,否则返回一个由指定的Supplier接口生成的值 |
| orElseThrow | 如果有值则将其返回,否则抛出一个由指定的Supplier接口生成的异常 |
eg:
Student s1 = Optional.ofNullable(teacher).map(t -> t.getStudent()).orElse(new Student());
学习使我快乐

浙公网安备 33010602011771号