前言 在 Java 语言开发中,可能大多数程序员遇到最多的异常就是 NullPointException 空指针异常了.这个当初语言的开发者"仅仅因为这样实现起来更容易"而允许空引用所带来的代价是非常惨痛的.而我们开发者不得不使用多重 if 嵌套判断来规避 NPE 或者通过多个 if 结合 return 语句来终止程序.且看一个例子 假如需要处理下面的嵌套对象,这是一个用于汽车.汽车保险的客户. public class Person { private Car car; public…
避之不及的 NullPointerException NPE : NullPointerException 空指针异常是最常见的Java异常之一,抛出NPE错误不是用户操作的错误,而是开发人员的错误,应该被避免,那么只能在每个方法中加入非空检查,阅读性和维护性都比较差. 以下是一个常见的嵌套对象:一个用户所拥有的汽车,以及为这个汽车配备的保险. public class User { private String userName; private Car car; public String…
初识 A container object which may or may not contain a non-null value. 笔者理解,Optional是一个容器类.将Object放到Optional中,从而可以使用容器的一些特性,比如链式编程(Stream)等. 具体应用起来,可以分为两步: 放入容器 使用容器 放入容器 有两个方法可以使用,第一个of,不检查传入value是否为null,可能会报NPE. 第二个ofNullable会检查,如果value为null,就返回一个emp…