Java 包装类与泛型应用详解
一、Java 包装类基础
在 Java 中,装箱(boxing)是将基本数据类型转换为对应的包装类对象的过程,反之则为拆箱(unboxing)。从 JDK 5 开始,编译器引入了自动装箱和拆箱机制,这大大简化了代码编写,但也带来了一些需要注意的细节。
包装类使得基本数据类型可以作为对象处理,从而支持泛型等面向对象特性。除了 Integer 和 Character,其余基本类型的包装类名称均为首字母大写。
自动装箱和拆箱示例如下:
public class BoxingUnboxingExample {
public static void main(String[] args) {
// 自动装箱:int 转为 Integer
int primitiveInt = 10;
Integer boxedInt = primitiveInt;
// 自动拆箱:Integer 转为 int
int unboxedInt = boxedInt;
// 算术运算中的自动拆箱
Integer anotherBoxedInt = 20;
int result = boxedInt + anotherBoxedInt;
// 显式操作(通常不需要,但了解原理很重要)
Integer explicitlyBoxedInt = Integer.valueOf(primitiveInt);
int explicitlyUnboxedInt = explicitlyBoxedInt.intValue();
System.out.println("Primitive int: " + primitiveInt);
System.out.println("Boxed int: " + boxedInt);
System.out.println("Unboxed int: " + unboxedInt);
System.out.println("Result: " + result);
}
}


