任何含有null值的包装类在Java拆箱生成基本数据类型时候都会抛出一个空指针异常。一些程序员犯这样的错误,他们认为自动装箱会将null转换成各自基本类型的默认值,例如对于int转换成0,布尔类型转换成false,但是那是不正确的,如下面所示:
String isWearMask = (tpm.getWearMask() == 1 ? "是" : "否");
//此时tpm不为null,如果tpm里面的值wearMask为null,会报空指针异常;原因:程序会把 null值拆箱成基本数据类型与 1 比较,这时候会报错