Java代码中Integer和int有什么区别呢?
下文笔者讲述java代码中Integer类型和int类型之间的不同之处,如下所示:
数据类型简介说明
在java编程语言中,一切皆对象,包括数据类型 但是java中还存在原始的数据类型 boolean,char,byte,short,int,long,float,double 分别对应的包装类型为:Boolean,Character,Byte,Short,Integer,Long,Float,Double 两者之间可以进行互相转换
下文将讲述Integer和int的区别,如下所示
Integer和int的区别: 1.int初始值0 , Integer初始值为null 2.数据的存储模式不同: Integer缓存127以内的数据,将会存储在缓存池中 对于大于128的数据,则采用实时读取的模式,不会缓存数据 int则直接存储在常量池中例:
public class TestInteger { public static void main(String[] args) { int i = 128; Integer i2 = 128; Integer i3 = new Integer(128); System.out.println(i == i2); //Integer会自动拆箱为int,所以为true System.out.println(i == i3); //true,理由同上 Integer i4 = 127;//编译时被翻译成:Integer i4 = Integer.valueOf(127); Integer i5 = 127; System.out.println(i4 == i5);//true Integer i6 = 128; Integer i7 = 128; System.out.println(i6 == i7);//false Integer i8 = new Integer(127); System.out.println(i5 == i8); //false Integer i9 = new Integer(128); Integer i10 = new Integer(123); System.out.println(i9 == i10); //false } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。