Java教程

Java8之Optional

本文主要是介绍Java8之Optional,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

 

/*
        Optional 容器类常用方法
        Optional.of(T t) 创建一个Optional实例
        Optional.empty()  创建一个空的Optional实例
        Optional.ofNullable(T t)   若t不为null,则创建Optional实例,否则创建空实例
        isPresent():判断是否包含值
        orElse(T t):如果对象包含值,返回该值,否则返回t
        orElseGet(Supplier s):如果对象包含值,返回该值,否返回 s 获取的值
        map(Function f): 如果有值对其进行处理,并返回处理后的Optional,否则返回Optional.empty()
        flatMap(Function map) : 与map类似,要求返回值是Optional
         */

        Optional<Book> op = Optional.of(new Book());
        System.out.println(op.get());

        Optional<Book> op2 = Optional.ofNullable(new Book());
        if(op2.isPresent()){
            System.out.println(op2.get());
        }

        Book book = op2.orElse(new Book());

        Book book2 = op2.orElseGet(()-> new Book());

        Optional<String> str = op2.map(e-> e.getName());

        Optional<String> str2 = (Optional<String>) op2.flatMap(e-> Optional.of(e.getName()));

 

这篇关于Java8之Optional的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!