基本类型及其封装类,在进行赋值或计算时可以进行自动装箱或解箱,如下:
public class TestInteger {
public static void main(String[] args) {
Integer i1 = 3;//5.0会把3自动转变为Integer(3)自动装箱
Integer i2 = 3;//来自于自动装箱常量池(-128~127)
int i3 = i1 + i2;//5.0把i1自动转变为数字3自动解箱
System.out.println(i1.equals(i2));
System.out.println(i1 == i2);
System.out.println("i3="+i3);
Integer i4 = new Integer(3);
Integer i5 = new Integer(3);
System.out.println(i4 == i5);
Integer i6 = i1+i2;//3+3=6先解后装
Integer i7 = 3;
System.out.println(i6 == i7);
//i3 = 300;//什么时候自动装箱/解箱不成立??
System.out.println(i3 == i7);//自动解箱,比int
//Long l = 3;//自动装箱3--〉Integer
long lo = new Integer(3);//自动解箱,还原int
Long l = 3L;
Integer i = null;
int ii = i;//自动解箱空指针异常
}
}