Java的主要數據類型(Primitive)


有一系列類需特別對待;可將它們想象成“基本”、“主要”或者“主”(Primitive)類型,進行程序設計時要頻繁用到它們。之所以要特別對待,是由於用new創建對象(特別是小的、簡單的變量)並不是非常有效,因為new將對象置於“堆”里。對於這些類型,Java采納了與C和C++相同的方法。也就是說,不是用new創建變量,而是創建一個並非句柄的“自動”變量。這個變量容納了具體的值,並置於堆棧中,能夠更高效地存取。Java決定了每種主要類型的大小。就象在大多數語言里那樣,這些大小並不隨着機器結構的變化而變化。這種大小的不可更改正是Java 程序具有很強移植能力的原因之一。

 
類型 bit位數 值范圍 默認值
boolean 1 true/false false
char 16 '\u0000~u\FFFF’ '\u0000'
byte 8 -128~127 0
short 16 -32768~32767 0
int 32 -2147483648~2147483647 0
long 64 -9233372036854477808~9233372036854477807 0L
float 32 -3.40292347E+38~3.40292347E+38 0.0f
double 64

-1.79769313486231570E+308~1.79769313486231570E+308

0.0d

Java1.1增加了兩個類,用於進行高精度的計算:BigInteger和BigDecimal。盡管它們大致可以划分為“封裝器”類型,但兩者都沒有對應的“主類型”。這兩個類都有自己特殊的“方法”,對應於我們針對主類型執行的操作。也就是說,能對int 或float 做的事情,對BigInteger 和BigDecimal 一樣可以做。只是必須使用方法調用,不能使用運算符。此外,由於牽涉更多,所以運算速度會慢一些。我們犧牲了速度,但換來了精度。BigInteger 支持任意精度的整數。也就是說,我們可精確表示任意大小的整數值,同時在運算過程中不會丟失任何信息。BigDecimal 支持任意精度的定點數字。例如,可用它進行精確的幣值計算。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM