• Optional 的应用


    Optional 为java8引入,参数可以为null,主要解决空指针问题,应用举例为:

    public class OptionalTest {

    //java8 引入Optional,解决空指针问题
    public static void main(String[] args) {
    OptionalTest optional = new OptionalTest();
    Integer value1 = null;
    Integer value2 = new Integer(8);
    System.out.println("value1----->" + value1);
    // Optional.ofNullable - 允许传递为 null 参数
    Optional<Integer> a = Optional.ofNullable(value1);

    // Optional.of - 如果传递的参数是 null,抛出异常 NullPointerException
    Optional<Integer> b = Optional.of(value2);
    System.out.println("俩参数和为:"+optional.sum(a, b));
    }

    public Integer sum(Optional<Integer> a, Optional<Integer> b) {
    // Optional.isPresent - 判断值是否存在
    System.out.println("a=====" + a);
    System.out.println("参数一存在:" + a.isPresent());
    System.out.println("参数二存在:" + b.isPresent());

    // Optional.orElse - 如果值存在,返回它,否则返回默认值
    Integer value1 = a.orElse(new Integer(0));

    // Optional.get - 获取值,值需要存在
    Integer value2 = b.get();
    return value1 + value2;
    }
    }

    其运行结果为:

    value1----->null
    a=====Optional.empty
    参数一存在:false
    参数二存在:true
    俩参数和为:8

  • 相关阅读:
    luogu P3174 毛毛虫
    P3386二分图最大匹配模版
    P4180 严格次小生成树
    差分约束
    高斯消元
    P1306 斐波那契公约数
    极值
    排序
    P1852 [国家集训队]跳跳棋
    高精度模版
  • 原文地址:https://www.cnblogs.com/qqzhulu/p/10386270.html
Copyright © 2020-2023  润新知