java8新特性Optional容器类map,flatMap使用
1、public<U> Optional<U> map(Function<? super T, ? extends U> mapper)
如果有值对其处理,并返回处理后的Optional,否则返回Optional.empty()
public void test0() {
Optional<Dept> optional = Optional.
ofNullable(new Dept(Dept.Status.FREE,1668L,
"阿里巴部门","杭州"));
System.out.println(optional.map((e) -> e.getDeptno()));
}

2、查看程序运行结果:

3、public<U> Optional<U> flatMap(Function<? super T, Optional<U>> mapper)
如果有值对其处理,并返回处理后的Optional,要求返回值必须是Optional
@Test
public void test6() {
Optional<Dept> optional = Optional.
ofNullable(new Dept(Dept.Status.FREE,1668L,
"阿里巴部门","杭州"));
Optional<Long> op = optional.flatMap((e) -> Optional.of(e.getDeptno()));
System.out.println(op.get());
}

4、查看程序运行结果:

5、如何避免空指针异常
@Test
public void test8() {
Optional<Dept> optional = Optional.empty();
System.out.print(optional.get().getStatus().getName());
}

6、查看运行结果:
