在Java中,Number 這個類很少用,他是個抽象類,繼承了Object類,實現了Serializable<>接口。一般地,當需要使用數字的時候,我們通常使用內置數據類型,如:byte、int、long、double等。
實例
int i = 5000;
float gpa = 13.65;
byte mask = 0xaf;
然而,在實際開發過程中,我們經常會遇到需要使用對象,而不是內置數據類型的情形。為了解決這個問題,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);
}
}
以上實例編譯運行結果如下:
15
當x被賦為整型值時,由于x是一個對象,所以編譯器要對x進行裝箱。然后,為了使x能進行加運算,所以要對x進行拆箱。
Number類的成員方法
下面的表中列出的是Number類的方法: