装箱:基本类型转变为包装类型的过程。
拆箱:包装类型转变为基本类型的过程。
public class test {
public static void main(String[] args) {
//以int与Integer为例:
//Integer varInteger1=new Integer(100);JDK5以前
Integer varInteger1=100;//自动装箱将int类型转化为Integer包装类
//等价于Integer varInteger1=Integer.valueOf(100);
int varInt=varInteger1;//自动拆箱将Integer类型转化为int类型
//等价于int varInt=varInteger.intValue();
}
}
装箱是通过调用包装器类的 valueOf 方法实现的
拆箱是通过调用包装器类的 xxxValue 方法实现的,xxx代表对应的基本数据类型。
如int装箱的时候自动调用Integer的valueOf(int)方法;Integer拆箱的时候自动调用Integer的intValue方法。
整型的包装类 valueOf 方法返回对象时,在常用的取值范围内,会返回缓存对象。
浮点型的包装类 valueOf 方法返回新的对象。
布尔型的包装类 valueOf 方法 Boolean类的静态常量 TRUE | FALSE。