您的位置:首页 > 编程语言 > Java开发

2015070204 - EffactiveJava笔记 - 第49条 基本类型优于装箱类型(3)

2015-07-02 22:05 381 查看
基本数据类型只有数值,而装箱数据类型除了它对应的基本类型的所有功能外,还有非功能性值null;

预期的结果是不打印Unbelievable.

实际结果是在计算i == 42抛出空指针异常.

原因在于:i是Integer对象,而不是int,和所有引用类型一样,它的初始值是null.当计算i == 42时,它会将Integer和int进行比较,在任何时候,当在一项操作中混合使用基本数据和包装类型时,装箱类型就会自动拆箱,无一例外.

如果null对象引用被自动拆箱,就会得到空指针异常,它几乎可以在任何位置发生.

如何修正这个问题呢?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: