基本数据类型和包装类的注意事项和类别

区别:

1.基本类型存储在栈里,包装类型存储在堆里。因为栈的效率更高,所以保留了基本类型。

2.包装类是对象,拥有方法和字段,对象的调用是引用对象的地址。

3.基本类型是值传递,包装类是引用传递。

4.向ArrayList,LinkedList中放数据的时候,只能放Object类型的,基本类型放不进去。

基本类型,包装类 以及其默认值,包装类的默认值为Null。

基本类型的包装类

Integer 、Long、Short、Byte、Character、Double、Float、Boolean、BigInteger、BigDecmail

其中BigInteger、BigDecimal没有相对应的基本类型,主要应用于高精度的运算,BigInteger 支持任意精度的整数,

BigDecimal支持任意精度带小数点的运算。

基本类型与包装类型的异同:

1、在Java中,一切皆对象,但八大基本类型却不是对象。

2、声明方式的不同,基本类型无需通过new关键字来创建,而封装类型则需new关键字。

3、存储方式及位置的不同,基本类型是直接存储变量的值,保存在堆栈中能高效的存取;封装类型需要通过引用指向实例,具体的实例保存在堆中;

4、初始值的不同,封装类型的初始值为null,基本类型的的初始值视具体的类型而定,比如int类型的初始值为0,boolean类型为false;

5、使用方式的不同,比如与集合类合作使用时只能使用包装类型。

6、什么时候该用包装类,什么时候该用基本类型,看基本的业务来定:这个字段允不允许null值,如果允许,则必然要用封装类;否则,基本类型就可以了。如果用到比如泛型和反射调用函数,就需要用包装类!

猜你喜欢

转载自blog.csdn.net/weixin_44162368/article/details/92810382