Java(二)Java基础--02自动拆装箱

2019-11-01  本文已影响0人  young十三

一、什么是包装类型?

image.png

继承图

image.png

二、包装类型和基本数据类型的使用场景

1、在某些场合不能使用基本类型必须使用包装类

比如集合能接受的类型为Object,基本类型是无法添加进去的,还有范型也必须使用包装类

2、包装类可以为null值,基本类型不能

假设我们要定义一个变量表示分数 如果用基本类型表示的话:int score;
默认值为零,如果我想表示分数为空也就是没有参加考试就没法表现了因为值类型是无法赋空值的,如果使用包装类型Integer score,就可以表示这种情况,因为Integer的默认值为空。

3、包装类型是引用类型,里面有一些有用的属性和方法

String num1 = "123";
int num2 = Integer.parseInt(num1);
parseInt就是Integer包装类提供的一个将字符串转成int型的方法

4、包装类还有一个很重要的特新就是数据缓存

还是拿Integer来举例,在-128127区间的数会被缓存,当类加载的时候就创建这256个数对应的对象,并放到名为cache的数组中,调用valueOf()方法时会先判断该数是否在-128127的区间,如果在则直接获取数组中该对象的引用,如果不在则创建该对象

image.png image.png

三、什么是自动拆装箱?

image.png

四、Integer 的缓存机制

image.png image.png

思考题,为什么Integer的取值范围是-128到127之间???

上一篇下一篇

猜你喜欢

热点阅读