基本类型和包装类型的主要区别
1、 初始值不同
2、 使用方式不同
3、 存储方式及位置的不同
4、 声明方式不同
自动装箱和自动拆箱
使用场景
基本类型与包装类型
基本数据类型
可以分为三类:
数值类型。
字符类型。
布尔类型。
数值类型又分为:
整数类型。
浮点数类型。
整数类型:byte,short,int,long
浮点数类型:float,double
字符类型:char
布尔类型:boolean
基本类型的包装类
Integer 、Long、Short、Byte、Character、Double、Float、Boolean、BigInteger、BigDecmail
其中BigInteger、BigDecimal没有相对应的基本类型,主要应用于高精度的运算,BigInteger 支持任意精度的整数
BigDecimal支持任意精度带小数点的运算。
基本类型和包装类型的主要区别
1、 初始值不同
初始值不同,基本类型的初始值如int为0,boolean为false,而包装类型的初始值为null
包装类型可以为 null,而基本类型不可以
2、 使用方式不同
包装类型可用于泛型,而基本类型不可以,泛型不能使用基本类型,因为使用基本类型时会编译出错。
3、 存储方式及位置的不同
基本类型比包装类型更高效。基本类型在栈中直接存储的具体数值,而包装类型则存储的是堆中的引用。
很显然,相比较于基本类型而言,包装类型需要占用更多的内存空间。假如没有基本类型的话,对于数值这类经常使用到的数据来说,每次都要通过 new 一个包装类型就显得非常笨重。
4、 声明方式不同
基本类型不适用new关键字,而包装类型需要使用new关键字来在堆中分配存储空间。