java8新特性Optional容器类map,flatMap使用

 时间:2026-02-15 06:43:13

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()));

    }

java8新特性Optional容器类map,flatMap使用

2、查看程序运行结果:

java8新特性Optional容器类map,flatMap使用

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());

    }

java8新特性Optional容器类map,flatMap使用

4、查看程序运行结果:

java8新特性Optional容器类map,flatMap使用

5、如何避免空指针异常

@Test

    public void test8() {

        Optional<Dept> optional = Optional.empty();

        

        System.out.print(optional.get().getStatus().getName());

    }

java8新特性Optional容器类map,flatMap使用

6、查看运行结果:

java8新特性Optional容器类map,flatMap使用

  • 塞尔达传说:姆吉拉的假面图文攻略 三 沼之神殿
  • 塞尔达龙角怎么刷
  • 360杀毒如何开启所有文件监控模式?
  • 塞尔达传说荒野之息风弹怎么弄
  • 塞尔达传说 荒野之息怎么召唤坐骑
  • 热门搜索
    什么叫信息技术 english是什么意思 自然的意思 循序渐进的意思 煦的意思 sa是什么意思 什么是股票基金 茂盛的意思 痤疮用什么 什么杀毒软件最好用