Java基本类型包装类的equals比较

近期在进行Integer类型相等判断时遇到了空指针:

Integer a = null;
boolean b = a == 1;

第二行出现了空指针异常。想了想发现是Java在自动拆箱的时候把代码变成了这样:

Integer a = null;
boolean b = a.intValue() == 1;

idea实际上也显示了提醒:


提示:a的拆箱可能会造成NullPointerException

故针对基本类型包装类的比较,应写为:

Integer a = null;
boolean b = Objects.equals(a, 1);

END

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容