时间:2021-05-20
Integer和int最本质的区别就是:Integer是封装类,int是基本数据类型(这是废话)。
本文是希望能对Integer和int的区别进行更详细的对比说明并加以举例
在说明Integer的时候有几个小知识点提一下:
几点说明
两个通过new生成的Integer变量是永远不相等的(因为new生成的是两个新对象,内存地址不同)
Integer a = new Integer(1);Integer b = new Integer(1);System.out.println(a == b);//false两个通过非new产生的Integer变量也是不相等的(因为非new产生的Integer变量指向Java常量池中的对象,而new产生的变量指向堆中新建对象,他俩所在的内存地址不同)
Integer a = new Integer(1);Integer b = 1;System.out.println(a == b);//false两个非new产生的Integer变量比较:当值在-128~127之间时,结果为true,当值在此区间外结果为false(因为Integer常量池的存储范围是[-128,127],在此范围内是直接存储于常量池的,都指向同一个地址。在此范围外的数需要通过堆内存创建一个新对象。比如Integer a=1会将1写入缓存中,下次再写Integer b=1时会直接从缓存中去,不用new了,所以取到的地址也是相同的)
Integer a = 1;Integer b = 1;System.out.println(a == b);//trueInteger a = 129;Integer b = 129;System.out.println(a == b);//false到此这篇关于Integer和int的区别实例详解的文章就介绍到这了,更多相关Integer和int的区别内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
java进制转换实例详解十进制转成十六进制:Integer.toHexString(inti)十进制转成八进制Integer.toOctalString(int
一、先说说int与integer的区别 int是基本数据类型,默认值为0,不需要进行实例化 integer是引用数据类型,是int的封装类型,默认值为nul
Javaint与integer区别:int与integer的区别从大的方面来说就是基本数据类型与其包装类的区别:int是基本类型,直接存数值,而integer是
int和integer相比Integer对象会占用更多的内存。Integer是一个对象,需要存储对象的元数据。但是int是一个原始类型的数据,所以占用的空间更少
Java浅复制和深复制的实例详解1浅复制和深复制区别浅复制:浅复制只是复制本对象的原始数据类型,如int、float、String,对于数组和对象引用等是不会复