package com.itm.test; public class AutoBox { /** * * 基本类型的自动拆装箱 * * * @param args */ public static void main(String[] args) { // 自动装箱 Integer iObj = 3; // 自动拆箱 System.out.println(iObj + 12); /***** * * * * ·基本数据类型的对象缓存: * ================================================================================== 在对Integer对象的-128~127之间的数字的时候,使用了享元模式设计(flyweight)。 导致num1==num2 是true,即是同一个对象。 有很多个小的对象,它们有很多属性相同,就把他们变成相同的对象, 那些不同的属性把它变成方法的参数,称之为外部状态。 那些相同的属性称之为这个对象的内部状态。 * */ Integer num1 =12; Integer num2 =12; System.out.println(num1==num2);// --true Integer num3 =129; Integer num4 =129; System.out.println(num3 == num4);// --false Integer num5 =Integer.valueOf(12); Integer num6 =Integer.valueOf(12); System.out.println(num5==num6);// --true Integer num7 =Integer.valueOf(212); Integer num8 =Integer.valueOf(212); System.out.println(num7==num8);// --false } }