Java中 int和Integer的区别+包装类

2025-04-05 12:34:49
推荐回答(2个)
回答1:

这种问题随便一搜多的是,不懂为什么要专门提问

java.lang.Integer是一个类.对它的操作要通过类的方法  
 int是JAVA缺省的8中基本数据类型之一.不是类的对象.
int是基本数据类型,Integer是对int进行了封装的一个类。  
 声明为int的变量不需要实例化,声明为Interger的变量需要实例化  
int是基本类型,Integer是包装类,也就是类。
Integer   是比int   更高级的   数据类型   为什么java中使用int   而不像vb中那样使用Integer
int是面向机器底层的数值类型,是Primitive类型的数据类型,而Integer是int的Warpper类,是面向对象的即OOP的对象类型。int   一般只用在数值计算中,而Integer是用在Java的其它要使用对象的地方,比如Map的Key与Value,List与Set的Element若要保存数值信息都要把int包装成Integer对象使用。
Java   提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。  
 原始类型           封装类  
 boolean             Boolean  
 char                   Character  
 byte                   Byte  
 short                 Short  
 int                     Integer  
 long                   Long  
 float                 Float  
 double               Double  
引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为   null,而原始类型实例变量的缺省值与它们的类型有关。

回答2:

int是基本类型, Integer是对象.
Integer提供了更多操作int类型的方法.
比如int a = 1 和 Interger a = new Integer(1);
前者不能判断是否为空, 后者可以有null来判断.
除非特别简单的情况下,其他情况更推荐使用Integer