首页 > 代码库 > Java Number类(数据类型的包装类)

Java Number类(数据类型的包装类)

Java Number

一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte、int、long、double等。 
例如:

    int i = 5000;    float gpa = 13.65;    byte mask = 0xaf;
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

然而,在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情形。为了解决这个问题,Java语言为每一个内置数据类型提供了对应的包装类。 
所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类Number的子类。

这种由编译器特别支持的包装称为装箱,所以当内置数据类型被当作对象使用的时候,编译器会把内置类型装箱为包装类。相似的,编译器也可以把一个对象拆箱为内置类型。Number类属于java.lang包。 
下面是一个装箱与拆箱的例子:

    public class Test{       public static void main(String args[]){          Integer x = 5; // boxes int to an Integer object          x =  x + 10;   // unboxes the Integer to a int          System.out.println(x);       }    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

运行结果如下: 
15

当x被赋为整型值时,由于x是一个对象,所以编译器要对x进行装箱。然后,为了使x能进行加运算,所以要对x进行拆箱。

为了使x能进行加运算,所以要对x进行拆箱。

为了使x能进行加运算,所以要对x进行拆箱。

为了使x能进行加运算,所以要对x进行拆箱。

为了使x能进行加运算,所以要对x进行拆箱。

为了使x能进行加运算,所以要对x进行拆箱。

为了使x能进行加运算,所以要对x进行拆箱。

Java Number类(数据类型的包装类)