Java 占用字節(jié)數
數據類型/大小(二進制位數)/范圍/默認值
byte(字節(jié))/8/-128 - 127/0
shot(短整型)/16/-32768 - 32768/0
int(整型)/32/-2147483648-2147483648/0
long(長整型)/64/-9233372036854477808-9233372036854477808/0
float(浮點型)/32/-3.40292347E+38-3.40292347E+38/0.0f
double(雙精度)/64/-1.79769313486231570E+308-1.79769313486231570E+308/0.0d
char(字符型)/16 /‘ \u0000 - u\ffff ’ /‘\u0000 ’
boolean(布爾型)/1/true/false/false
JAVA基本數據類型所占字節(jié)數是多少?
byte/1字節(jié)
short/2字節(jié)
int/4字節(jié)
long/8字節(jié)
char/2字節(jié)(C語言中是1字節(jié))可以存儲一個漢字
float/4字節(jié)
double/8字節(jié)
boolean/false/true(理論上占用1bit,1/8字節(jié),實際處理按1byte處理)
JAVA是采用Unicode編碼淹魄。每一個字節(jié)占8位。你電腦系統(tǒng)應該是 32位系統(tǒng)磷雇,這樣每個int就是 4個字節(jié),其中一個字節(jié)由8個二進制位組成。
Java一共有8種基本數據類型(原始數據類型):
類型/存儲要求/范圍(包含)/默認值/包裝類
整數類型/int/4字節(jié)(32位)/-231~ 231-1/0/Integer
整數類型/short/2字節(jié)(16位)/-215~215-1/0/Short
整數類型/long /8字節(jié)(64位)/-263~263-1/0/Long
整數類型/byte/1字節(jié)(8位)/-27~27-1/0/Byte
浮點類型/float/4字節(jié)(32位)/-3.4e+38 ~ 3.4e+38 0.0f/Float
浮點類型/double/8字節(jié)(64位)/-1.7e+308 ~ 1.7e+308/0/Double
字符類型/char/2字節(jié)(16位)/u0000uFFFF(‘’‘辕坝?’)/‘0’/Character
(0~216-1(65535))
布爾類型 boolean/1/8字節(jié)(1位)/true, false/false/Boolean
在移動開發(fā)中由于移動設備內存的局限性誊册,往往需要考慮使用的數據類型所占用的字節(jié)數领突。下面簡單介紹下Java中幾種基本數據類型,以加深記憶解虱。
在Java中一共有8種基本數據類型攘须,其中有4種整型,2種浮點類型,1種用于表示Unicode編碼的字符單元的字符類型和1種用于表示真值的boolean類型于宙。(一個字節(jié)等于8個bit)
1.整型
類型/存儲需求/bit數/備注
int/4字節(jié)/48
short/2字節(jié)/28
long/8字節(jié)/88
byte/1字節(jié)/18
2.浮點型
類型/存儲需求/bit數/備注
float/4字節(jié)/48/float類型的數值有一個后綴F(例如:3.14F)
double/8字節(jié)/88/沒有后綴F的浮點數值(如3.14)默認為double類型
3.char類型
類型/存儲需求/bit數/備注
char/2字節(jié)/28
4.boolean類型
類型/存儲需求/bit數/備注
boolean/1字節(jié)/18/false浮驳、true
補充:Java有一個能夠表示任意精度的算書包,通常稱為“大數值”(big number)捞魁。雖然被稱為大數值至会,但它并不是一種Java類型,而是一個Java對象谱俭。
如果基本的整數和浮點數精度不能夠滿足需求奉件,那么可以使用java.math包中的兩個很有用的類:BigIntegerBigDecimal(Android SDK中也包含了java.math包以及這兩個類)這兩個類可以處理包含任意長度數字序列的數值。BigInteger類實現了任意精度的整數運算昆著,BigDecimal實現了任意精度的浮點數運算