java中的int与integer的区别

 时间:2024-10-28 16:31:28

1、int与integer最大的区别就是int是基本的数据类型,integer是封装的对象

2、我们看一个例子,我们看到,integer对象可以直接通过int赋值,这个过程称为装箱

java中的int与integer的区别

3、再看一下输出,发现integer对象与int比较时结果为true,这个过程称为拆箱

java中的int与integer的区别

4、在继续看例子,我们新创建了一个integer对象,在把这个对象与之前的值比较

java中的int与integer的区别

5、看一下结果,前两个都是拆箱,所以为true,第三个因为是不同的引用,所以false

java中的int与integer的区别

6、继续扩展,看一下下面的例子,是不是第一眼看上去都是false呢

java中的int与integer的区别

7、看一下结果,第一个为true,第二个为false,为什么呢,需要解答这个问题,我们就要了解一下装箱的本质

java中的int与integer的区别

8、当我们给一个Integer对象赋一个int值的时候,会调用Integer类的静态方法valueOf,我们看一下Integer的valueOf源码

java中的int与integer的区别

9、只要int值在IntegerCache.low与IntegerCache.high之间,就直接从缓存取值,那这两个值是多少呢,我们看一下IntegerCache

java中的int与integer的区别

10、发现值是-128到127,也就是说当值在-128到127时,其实引用指向的同一地址引用,所以上面的结果也就可以解释了

  • 如何提高花呗额度
  • 花呗怎么提升额度到20000
  • 花呗怎么提升额度到5000
  • 花呗额度怎么快速提升
  • 花呗怎么提高总额度
  • 热门搜索
    关于元旦的英语手抄报 海洋知识手抄报 有关母亲节的手抄报 我爱科学手抄报内容 小学生健康手抄报 防地震手抄报内容 冬季防火手抄报 健康手抄报资料 手抄报边框素材 语文手抄报五年级