概念
Java语言规范中说道:在许多情况下包装与解包装是由编译器自行完成的(在这种情况下包装成为装箱,解包装称为拆箱)。
通俗的来讲,就是基本类型和对应包装类型可以自动转换。
byte <--> Byte
short <--> Short
int <--> Integer
long <--> Long
float <--> Float
double <--> Double
boolean <--> Boolean
char <--> Character
自动装箱
Integer i = 100; //相当于编译器自动作以下的语法编译:Integer i = Integer.valueOf(100);
Object o = 100; //同样属于自动装箱
自动拆箱
Integer a = 100; //装箱
int i = a; //拆箱,等同于int i = a.intValue();
int i = new Integer(100); //自动拆箱