JAVA8应用-Optional

public class OptionalTest {
    public static void main(String... args) {
        Optional<String> optional = Optional.ofNullable("");
        Optional<List<String>>
        //若不为空返回true,否则返回false
        boolean notNull = optional.isPresent();
        System.out.println(notNull);
        if (notNull) {
            String value = optional.get();
            System.out.println(value);
            //断言过滤,若正确返回value,否则返回Optional.empty
            Optional<String> predicate = optional.filter(test -> {
                if (test.equals("test")) {
                    return true;
                }
                return false;
            });
            System.out.println(predicate.get());
            //lambda表达式返回值会包装为Optional实例。
            Optional<String> upperName = optional.map((value1) -> value1.toUpperCase());
            System.out.println(upperName.orElse("为null返回默认值"));
        } else {
            //若不为空返回value,否则返回other
            String value = optional.orElse("为null返回默认值");
            System.out.println(value);

        }

    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、背景 有时候在处理业务逻辑时,需要判断方法返回的值是否为 null 。如,根据用户ID查找用户,Service...
    希崽家的小哲阅读 3,423评论 0 0
  • Optional 一个可以为 null 的容器 所在包:import java.util.Optional; 基本...
    专职跑龙套阅读 21,835评论 1 7
  • 自古以来, Java 开发者们都会遇到一个让人又爱又恨的异常: NullPointException, 为了解决这...
    金明浩KS阅读 698评论 0 1
  • Java中常见的NPE错误真实伤害了一大推程序猿,不过JDK8之后,终于出现了,一个可以解决这个问题的API,这个...
    Chinesszz阅读 1,183评论 0 1
  • 0x00 Optional是什么 Optional是一个容器:存放T类型的值或者null。它提供了一些有用的接口来...
    骊骅阅读 413评论 0 0