Java自动装箱和拆箱机制

自动装箱与拆箱概念

比如

Integer i = 10;

这个过程中会自动根据数值创建对应的 Integer对象,这就是装箱。

int j = i; 

自动将包装器类型转换为基本数据类型;这个就是拆箱。
装箱就是自动将基本数据类型转换为包装器类型;拆箱就是自动将包装器类型转换为基本数据类型。

作用的机制

比如这段代码

public class Test {
    public static void main(String[] args) {   
        Integer i = 10;
        int j = i;
    }
}
在控制台输入javap -c Test
就可以看到
Integer i = 10;
执行上面那句代码的时候,系统为我们执行了: 
Integer i = Integer.valueOf(10);

int j = i;
执行上面那句代码的时候,系统为我们执行了: 
int j = i.intValue();
装箱过程是通过调用包装器的valueOf方法实现的,而拆箱过程是通过调用包装器的 xxxValue方法实现的。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容