Java是一種強(qiáng)類型語(yǔ)言鸠匀。這就意味著必須為每一個(gè)變量聲明一種類型眉厨。在Java中一共有8中基本類型(primitive type)吁断,其中有4中整型、2種浮點(diǎn)型目派、1中用于標(biāo)書Unicode編碼的字符單元的字符類型和一種用于表示真值得boolean類型。
字節(jié)
1kb = 1024b; 1MB = 1024KB = 1024 * 1024B 其中 1024 = 2^10
1b(byte, 字節(jié)) = 8 bit;
相關(guān)單位
B與bit
數(shù)據(jù)存儲(chǔ)是以“字節(jié)”(byte)為單位的胁赢,數(shù)據(jù)傳輸大多是以“位”(bit企蹭,又名“bit”)為單位,一個(gè)位就代表一個(gè)0或1(即二進(jìn)制)智末,每八個(gè)位(bit谅摄,簡(jiǎn)稱b)組成一個(gè)字節(jié)(Byte,簡(jiǎn)寫為B)系馆,是最小一級(jí)信息單位送漠。
B與iB
1kb(kibibyte) = 1024byte
1kib(kilobyte) = 1000byte
硬盤生產(chǎn)商是以GiB(十進(jìn)制,即10的3次方=1000它呀,如1MiB=1000KB)計(jì)算的螺男,而電腦(操作系統(tǒng))是以GB(2進(jìn)制,即2的10次方纵穿, 如1MB=1024KB)計(jì)算的下隧,但是國(guó)內(nèi)用戶一般理解為1MiB=1M=1024 KB, 所以為了便于中文化的理解,翻譯MiB為MB也是可以的谓媒。
同樣根據(jù)硬盤廠商與用戶對(duì)于1MB大小的不同理解淆院,所以好多160G的硬盤實(shí)際容量按計(jì)算機(jī)實(shí)際的1MB=1024KB算都不到160G,這也可以解釋為什么新買的硬盤“缺斤短兩”并沒(méi)有它所標(biāo)示的那么大句惯。
注:10TB大約等于一個(gè)人腦的存儲(chǔ)量土辩。
整型
用于表示沒(méi)有小數(shù)部分的數(shù)值,允許負(fù)數(shù)抢野。
在Java中拷淘,整型的范圍與運(yùn)行Java代碼的機(jī)器無(wú)關(guān)。
長(zhǎng)整型數(shù)值有一個(gè)后綴L指孤,十六進(jìn)制前綴0x启涯,八進(jìn)制有一個(gè)前綴0贬堵。
從Java7開始,加上前綴ob结洼。從Java7開始還可以為數(shù)字字面變量加上下劃線黎做,如用1_000_000表示一百萬(wàn),這些下劃線只是為了讓人更易懂松忍,Java編譯器會(huì)去除這些下劃線蒸殿。
浮點(diǎn)類型
浮點(diǎn)類型用于表示有小數(shù)部分的數(shù)值。在Java中有兩點(diǎn)浮點(diǎn)類型鸣峭。
float類型數(shù)值后有一個(gè)后綴F宏所,沒(méi)有后綴F的浮點(diǎn)數(shù)值默認(rèn)為double類型。double后加D叽掘。
所有的浮點(diǎn)數(shù)值計(jì)算都遵循IEEE754規(guī)范楣铁。下面是用于溢出和出錯(cuò)情況的三個(gè)特殊浮點(diǎn)值
- 正無(wú)窮大
- 負(fù)無(wú)窮大
- NaN(不是一個(gè)數(shù)字)
Char類型
char類型用于表示單個(gè)字符。通常用來(lái)表示字符常量更扁。在Java語(yǔ)言中char類型用UTF-16編碼描述一個(gè)代碼單元盖腕。
boolean類型
有兩個(gè)值:false和true,用來(lái)判定邏輯條件浓镜。整型和布爾值之間不能相互轉(zhuǎn)換溃列。