java8新特性Optional容器类基本使用

2025-11-08 17:25:31

1、Optional.of(T t):创建一个Optional实例

@Test

    public void test1() {

        Optional<Dept> deptOptional = Optional.of(new Dept());

        System.out.println(deptOptional.get());

    }

java8新特性Optional容器类基本使用

2、Optional.empty(T t):创建一个空的Optional实例

@Test

    public void  test2() {

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

        System.out.println(optional.get());

    }

java8新特性Optional容器类基本使用

3、Optional.ofNullable(T t):若t不为null,创建一个Optional实例,否则创建空实例

@Test

    public void test3() {

        Optional<Dept> optional = Optional.ofNullable(new Dept());

        System.out.println(optional.get());

    }

java8新特性Optional容器类基本使用

4、isPresent()判断是否包含值

@Test

    public void test4() {

        Optional<Dept> optional = Optional.ofNullable(null);

        if(optional.isPresent()) {

            System.out.println(optional.get());

        }

    }

java8新特性Optional容器类基本使用

5、orElse(T t):如果调用对象包含值,返回该值,否则返回t

@Test

    public void test4() {

        Optional<Dept> optional = Optional.ofNullable(null);

        

        Dept dept = optional.orElse(new Dept(101L));

        

        System.out.print(dept);

    }

java8新特性Optional容器类基本使用

6、public T orElseGet(Supplier<? extends T> other)

如果调用对象包含值,返回该值,否则返回other获取的值

@Test

    public void test4() {

        Optional<Dept> optional = Optional.ofNullable(null);

        

        Dept dept = optional.orElseGet(() -> new Dept());

        

    }

java8新特性Optional容器类基本使用

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢