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
}
}