一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte、int、long、double 等。
实例:
int a = 5000;
float b = 13.65f;
byte c = 0x4a;
在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情形。为了解决这个问题,Java 语言为每一个内置数据类型提供了对应的包装类。
Integer、Long、Byte、Double、Float、Short都是抽象类 Number 的子类。
这种由编译器特别支持的包装称为装箱,所以当内置数据类型被当作对象使用的时候,编译器会把内置类型装箱为包装类。
相似的,编译器也可以把一个对象拆箱为内置类型。
实例:
public class Test{
public static void main(String[] args){
Integer x = 5;
x = x + 10;
System.out.println(x);
}
}
当 x 被赋为整型值时,由于x是一个对象,所以编译器要对x进行
装箱。然后,为了使x能进行加运算,所以要对x进行拆箱。