基礎程式設計(21)-Number

在物件導向程式語言裡,我們必須要先清楚的知道「類別」是資料型態的一種,只不過它是複雜的資料型態。所以當一個變數 a 被宣告成 int,我們說 a 是數值變數;但是當 b 被宣告成 Integer 時,我們說 b 是一個 Integer 物件,這時候的 b 是變數名稱也是物件名稱。

基本資料型態只有儲存單一值(數值/字元/布林),沒有任何”方法”可以使用,所以在物件導向程式語言裡有所謂的「型態包裝類別(Type-Wrapper)」,簡單說就是”基本資料型態物件版”,提供我們方便的方法使用。

Java數字類別

Java提供的數字類別包括 Byte、Short、Integer、Long、Float、Double。物件宣告的參考語法如下:

Integer integerObj = new Integer(5);

被宣告成數字類別的物件可以使用的方法如下:

回傳型態 物件方法 說明
byte byteValue() 回傳基本資料型態 byte、short、int、long、float 或 double。
short shortValue()
int intValue()
long longValue()
float float
double doubleValue()
int compareTo(Object) 物件1.compareTo(物件2)
比較兩個物件的內容,回傳 0 表示相等,< 0 表示物件2比較大,> 0 表示物件1比較大(物件2較小)。
boolean equals(Object) 物件1.equals(物件2)
比較兩個物件的內容是否相等,回傳true表示相等,false表示不相等。
String toString() 將各種Number物件轉成字串。
String Integer.toString(int) 基本資料型態 int、long 或 double 轉成字串。
String Long.toString(long)
String Double.toString(double)

除了方法之外,Java數字類別還提供一些常數使用:

常數 說明
數字類別.MAX_VALUE 取得各種數字類別的最大值,例如 Byte.MAX_VALUE 是 127
數字類別.MIN_VALUE 取得各種數字類別的最小值,例如 Byte.MIN_VALUE 是 -128
Float.NaN 表示不是數值。
Double.NaN
Float.NEGATIVE_INFINITY 表示比 (-Float.MAX_VALUE) 更小的負值。
Double.NEGATIVE_INFINITY 表示比 (-Double.MAX_VALUE) 更小的負值。
Float.POSITIVE_INFINITY 表示比 Float.MAX_VALUE 更大的正值。
Double.POSITIVE_INFINITY 表示比 Double.MAX_VALUE 更大的正值。