当咱们在代码中 以Integer i=15这样的方式定义时 Java编译器在编译时,在class中加入了Integer.valueOf()方法。也就至关于Integer i = Integer.valueOf(15) 这就是自动装箱; 同时为了下降自动装箱对性能的影响,Java在执行包装类的自动装箱功能时,对于-128到127之间的整数被装箱为Interger对象后,该对象会被另一个对该整数进行自动装箱的操做重复使用,也就是说屡次对同一个-128到127范围内的整数进行Integer装箱的操做,使用的都是第一次进行装箱操做时生成的对象
java
Integer a1 = 127; Integer a2 = 127; System.out.println(a1 == a2); Integer b1 = 128; Integer b2 = 128; System.out.println(b1 == b2);