装箱就是自动将基本数据累心转换为包装类型。如 int --> Integer,调用 Integer 的 valueOf(int) 方法即可。
拆箱就是自动将包装类型转换为基本数据类型。如 Integer --> int,调用 Integer 的 intValue 方法即可。
public static void main(String[] args) {
// 装箱
Integer i = Integer.valueOf(10);
System.out.println(i);
// 拆箱
int ii = i.intValue();
System.out.println(ii);
}
在 Java SE5 之前,如果要生成一个 Integer 对象,必须使用 new Integer() 这样的方法进行。
Integer i = new Integer(100);
而在 Java SE5 中就提供了自动装箱的特性,如果要生成一个 Integer 对象,可直接定义。
Integer i = 100;
那么,哪些数据类型都可以进行装箱和拆箱操作呢?
-- 8大基本数据类型都可支持自动装箱和拆箱。
基本数据类型 | 包装类型 |
---|---|
boolean | Boolean |
byte | Byte |
short | Short |
char | Character |
float | Float |
int | Integer |
double | Double |
long | Long |