美文网首页
Optional类

Optional类

作者: huxiaofeng | 来源:发表于2018-09-03 16:02 被阅读0次
public class Person { 
 private Optional<Car> car; 
 public Optional<Car> getCar() { return car; } 
}
public class Car { 
 private Optional<Insurance> insurance; 
 public Optional<Insurance> getInsurance() {  return insurance; } 
} 
public class Insurance { 
 private String name; 
 public String getName() { return name; }
} 

人可能有车,也可能没有车,因此将这个字段声明为Optional。车可能进行了保险,也可能没有保险,所以将这个字段声明为Optional。保险公司必须有名字,如果你遇到一个公司没有名称,你需要调查你的数据出了什么问题,而不应该再添加一段代码,将这个问题隐藏。

应用 Optional 的几种模式

  • 创建 Optional 对象
  1. 声明一个空的Optional。你可以通过静态工厂方法Optional.empty,创建一个空的Optional对象

Optional<Car> optCar = Optional.empty();

  1. 依据一个非空值创建Optional。你还可以使用静态工厂方法Optional.of,依据一个非空值创建一个Optional对象

Optional<Car> optCar = Optional.of(car);

  1. 可接受null的Optional。使用静态工厂方法Optional.ofNullable,你可以创建一个允许null值的Optional
    对象

Optional<Car> optCar = Optional.ofNullable(car);

相关文章

  • Java 9 改进的 Optional 类

    Optional 类在 Java 8 中引入,Optional 类的引入很好的解决空指针异常。 Optional ...

  • Optional用法

    Optional用法 从 Java 8 引入的一个很有趣的特性是 Optional 类。Optional 类主要...

  • Optional类

    Optional类为Java8新引入的一个类,Optional是一个可以为null的容器对象,Optional中的...

  • Optional类

    人可能有车,也可能没有车,因此将这个字段声明为Optional。车可能进行了保险,也可能没有保险,所以将这个字段声...

  • Optional 类

    Optional 类 声明:java8新特性系列为个人学习笔记,参考地址点击这里,侵删!! 到目前为止,臭名昭著的...

  • optional类

    简介 首先我们需要明确的是它并 不是对 null 关键字的替代策略,而是对于 null 判定提供了一种更加优雅的实...

  • Optional类

    一、Optional类创建 二、常用方法

  • Optional类

  • Optional 类

  • Java9 改进的 Optional 类

    Java 9 改进的 Optional 类 Java 9 新特性 Optional 类在 Java 8 中引入,O...

网友评论

      本文标题:Optional类

      本文链接:https://www.haomeiwen.com/subject/sqtiwftx.html