1.Integet是引用数据类型即类,int是基本数据类型,Integet是基本数据类型int对应的包装类。
int 的默认值为0 Integet的默认值为null
Interget-----int Bollean----boolean(每个基本数据类型都对应着一个包装类)
2.提到包装类,就不得不提起装箱和拆箱
装箱:就是把基本类型赋值给对应的包装类的操作如:
Integet i = 5;
拆箱:就是把包装类的值赋值给对应的基本数据类型的操作如:
Integet i = 5;//装箱
int j = i;//自动拆箱
int k = i.intValueOf();手动拆箱
3.Integet的缓存机制:不是new出来的情况下即Integet i = 1这种情况下,只要数值在-128 - 127这个范围之类,Integet j = 1;二者的地址相同
Integer a = 10;
Integer b = 10;
Integer c = 129;
Integer d = 129;
Integer e = new Integer(13);
Integer f = new Integer(13);
System.out.println(a == b);//true 因为范围在-128 - 127内 会使用相同对象的引用实现缓存和复用
System.out.println(c == d);//false 因为不再-128 - 127范围内
System.out.println(e == f);// false 因为new出来的对象是在堆里面地址值肯定不一样