java 基本类型和包装类型的区别

1、包装类型可以为 null,而基本类型不可以

它使得包装类型可以应用于 POJO 中,而基本类型则不行。
《阿里巴巴 Java 开发手册》上有详细的说明

数据库的查询结果可能是 null,如果使用基本类型的话,因为要自动拆箱(将包装类型转为基本类型,比如说把 Integer 对象转换成 int 值),就会抛出 NullPointerException 的异常。

2、包装类型可用于泛型,而基本类型不可以

编译时会报错

3、基本类型比包装类型更高效

因为包装类型是对象,存在堆中,基本类型直接从栈中取值

4、自动装箱和自动拆箱

把基本类型转换成包装类型叫做装箱(boxing),反之叫拆箱(unboxing)
自动装箱是通过Integer.valueOf()完成的,自动拆箱是通过intValue()完成的

你可能感兴趣的:(java 基本类型和包装类型的区别)