Java八種基本類型:
六種數字類型(四個整數型,兩個浮點型),
一種字符類型,
一種布爾型。
具體如下
1、整數:包括int,short,byte,long
2、浮點型:float,double
3、字符:char
4、布爾:boolean
對應空間和範圍如下
基本型別 | 二進制位數 | 最小值 | 最大值 | 包裝類 |
---|---|---|---|---|
boolean | 無 | 無 | 無 | |
char | 16-bit | 0(Unicode) | 65535(Unicode 2^16-1) | java.lang.Character |
byte | 8-bit | -128 | +127 | java.lang.Byte |
short | 16-bit | -32768(-2^15) | 32767 (+2^15-1) | java.lang.Short |
int | 32-bit | -2147483648(-2^31) | 2147483647 (+2^31-1) | java.lang.Integer |
long | 64-bit | -9223372036854775808(-2^63) | 9223372036854775807(+2^63-1) | java.lang.Long |
float | 32-bit | 1.4E-45(IEEE754規定32位內容) | 3.4028235E38(IEEE754) | java.lang.Float |
double | 64-bit | 4.9E-324(IEEE754) | 1.7976931348623157E308(IEEE754) | java.lang.Double |
void |
引用類分爲3種 (類類型,接口類型及數組類型)
類類型:對類實例的引用;
接口類型:對實現該接口的某個子類實例的引用;
數組類型:對數組值的引用,在jvm中數組是個真正的對象。
————————————————————————
編程時注意確定數值範圍,直接使用對應類型比較好
如32 位時使用 Float 類 節省開發時間
float的底層表示定義
IEEE 754 浮點單精度數字格式定義了存儲浮點數的32位比特(bit)佈局,各bit位具體爲:
"一位做符號位,八位留作指數,23位作尾數"。具體如下
SEEEEEEEEMMMMMMMMMMMMMMMMMMMMMMM
其中:
S = 符號位
E = 指數
M = 尾數
Float方法對浮點數與比特的相互轉化
1. 浮點數轉bit
Float.floatToIntBits(float f) 將一個浮點數轉成一個比特序列。返回一個32位整數,表示你作爲參數提供的浮點數的 IEEE 754 比特排列。
2. bit轉浮點數
Float.intBitsToFloat(int bits)將傳入整數作爲一個比特序列,按float對應位置規定意義,轉成一個浮點數。
小數計算說明
java中小數數值計算無法保證絕對精準,只能保證一定精度範圍,比如,兩個double數,不應該使用等號判定是否相等,因爲相等的兩個double數存儲在計算機中可能不相等(計算機存儲位數)。
尤其是除法,只能保留一定範圍的小數,精度取決於該類型在計算機的位數