1.包装类型可以为null,但是基本类型不可能为null。
这决定了包装类型可以用于DTO(Data Transfer Object) VO(View Object),PO(Persistant Object)。这些对象的属性必须为包装类型,因为在数据库查询时结果可能为null,如果属性为基本数据类型比如int ,就会自动拆包将Integer转成int,这会引发空指针异常。
2.包装类型可以用于泛型。
因为泛型在编译时会进行类型擦拭,原始类型只能是Object及其子类
3.基本类型更高效
基本类型在栈中,而包装类型在堆里面。
4.两个包装类型值相等,却不相等。
5.自动装箱和自动拆箱。
网友评论