zoukankan      html  css  js  c++  java
  • 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获取de值
    * map(Function f): 如果有值对其进行处理,并返回处理后的Optional,否则返回Optional.empty()
    * flatMap(Function map): 与map蕾丝,要求返回值必须是Optional
    */
    @Test
    public void test(){
    Optional<Student> student = Optional.of(new Student());
    Optional<Object> empty = Optional.empty();

    Optional<Student> op = Optional.ofNullable(new Student("1q",11, Student.Status.VOCATION));

    if(op.isPresent()){
    System.out.println(op.get());
    }

    op.orElse(new Student("11",11, Student.Status.VOCATION));

    op.orElseGet(()->new Student());

    Optional<Student.Status> status = op.map((e) -> e.getStatus());
    System.out.println(status);

    Optional<String> s = op.flatMap((e) -> Optional.ofNullable(e.getName()));
    System.out.println(s.get());
    }
  • 相关阅读:
    c++看题
    理想化
    thin mission
    编程时 和 thinking
    tiny mission 2021 10 20
    A Magic Lamp HDU
    Poj 3370
    鸽巢原理(抽屉原理)
    Miller-Rabin质数测试
    Nim or not Nim? HDU
  • 原文地址:https://www.cnblogs.com/yhc-love-cl/p/14277961.html
Copyright © 2011-2022 走看看