说到自动装箱与自动拆箱就不得不提包装类:
包装类
作用:
Java 语言中,一切都是对象,但是有例外: 八种基本数据类型不是对象,因此在很多时候非常不方便。 为此, Java提供为八种基本类型提供了对应的包装类。
使用:
在JDK1.5之后添加了两个功能,即自动装箱和自动拆箱
自动装箱:当我们把一个基本类型的值,赋值给引用变量时候,系统可以自动将它“包装”为相应的包装类的实例程序需要 对象时, 如果给的只是一个基本类型的值, 系统会将它自动装箱为包装类的实例达到的效果: 有了自动装箱之后, 基本类型的值可以当成对象用。也就是说当我们将基本数据类型的值直接赋值给引用变量时,jdk可以自动帮我们完成转换的工作。
自动拆箱:当我们需要一个基本类型的值时, 但实际上传入的包装类的对象。 系统会自动把对象进行剖析,得到它的值。也就是当我们将包装类型的值传给基本类型是,jdk依然可以帮我们完成自动转换。
前提:传入的值与包装类或者基本数据类型要一致
例如:
Integer i = 10; //自动装箱
int b = i; //自动拆箱
Long c = 13; //自动装箱
long d = i; //自动拆箱