首页 热点资讯 义务教育 高等教育 出国留学 考研考公

integer和int的区别是什么?

发布网友 发布时间:2022-04-01 14:01

我来回答

2个回答

懂视网 时间:2022-04-01 18:23

int和integer相比Integer对象会占用更多的内存。Integer是一个对象,需要存储对象的元数据。但是int是一个原始类型的数据,所以占用的空间更少。

  

  int是基本数据类型,int变量存储的是数值。Integer是引用类型,实际是一个对象,Integer存储的是引用对象的地址。Integer变量(无论是否是new生成的)与int变量比较,只要两个变量的值是相等的,结果都为true。非new生成的Integer变量与new Integer生成的变量比较,结果为false。

  

  

热心网友 时间:2022-04-01 15:31

integer和int的区别是:变量不同。

1、两个new Integer变量比较,永远是false,因为new生成的是两个对象,其内存地址不同。

Integer i = new Integer(100);Integer j = new Integer(100);System.out.print(i == j); //false

2、Integer变量和new Integer变量比较,永远为false。因为Integer变量指向的是java常量池中的对象,而new Integer的变量指向堆中新建的对象,两者在内存中的地址不同。

Integer i = new Integer(100);Integer j = 100;System.out.print(i == j); //false

3、两个Integer变量比较,如果两个变量的值在区间-128到127之间,则比较结果为true,如果两个变量的值不在此区间,则比较结果为false。

Integer i = 100;Integer j = 100;System.out.print(i == j); //true

Integer i = 128;Integer j = 128;System.out.print(i == j); //false

1、Integer 是 int 的包装类,int 则是 java 的一种基本数据类型。

 2、Integer 变量必须实例化后才能使用,而int变量不需要。

3、Integer 实际是对象的引用,当new一个 Integer时,实际上是生成一个指针指向此对象;而 int 则是直接存储数据值。

4、Integer的默认值是,int的默认值是0。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com