int 是 java提供给的8种原始数据类型之一,java还对每一个原始数据类型作了封装,Integer 就是对 int 的封装。java
区别1 :对象
int 默认值是 0;内存
Integer 默认值是 null;it
要想表现出来没有参加考试和考试成绩为 0 的区别,就要用Integer ;数据类型
区别2:引用
int 是基本类型,Integer是引用类型。float
好比int a= 5;Integer b=5; (要把integer 当作一个类看,同时须要导包java.lang.Integer);方法
对于a你只能用来作计算,好比加减乘除;im
对于b你能够用来作不少事情,由于他是一个对象,他有不少方法,你能够像使用String对象那样使用它。数据
区别3:
java 提供两种不一样的类型:引用类型和原始类型(或内置类型或基本类型)。
int是java的原始数据类型(Primitive),Integer是java为int提供的封装类(Warpper)。
Java为每一个原始类型提供了封装类。
原始类型 封装类
boolean Boolean
char Character
byte Byte
short Short
int Integer
long Long
float Float
double Double
int 通常作为数值参数就够了
integer 通常作类型转换的时候用的较多
Integer 是 int 的封装类,里面有不少进行处理的静态方法
Integer 是对象而int不是,内存的分配位置也不同
int 是一种基本数据类型,而Integer 是相应于int 的类类型,称为对象包装。
自动装箱和拆箱
A. 自动装箱:将基本数据类型封装为对象类型,成为一个对象之后就能够调用对象所声明的全部的方法。
Integer inA = 127; //以上的声明就是用到了自动的装箱:解析为 Integer inA = new Integer(127);
B. 自动拆箱:将对象从新转化为基本数据类型。
//装箱 Integer inB = 128; //拆箱 int inC = inB;