[table]
|資料型別|記憶體空間|取值範圍|表示數值個數|備註
|byte|8位(1個位元組)|-128~127|256|運算時自動提公升為int
|short|16位(2個位元組)|-32768~32767|65536|運算時自動提公升為int
|char|16位(2個位元組)|0~65535|65536|運算時自動提公升為int
|int|32位(4個位元組)|-2147483648~2147483647|42億
|long|64位(8個位元組)|-9223372036854775808~9223372036854775807|1844億億|值後面加l或l
|float|32位(4個位元組)|1.4e-45~3.4028235-e38|*|值後面加f或f
|double|64位(8個位元組)|4.9e-324~1.7976931348623-e308|*|*
|boolean|16位(2個位元組)|true,flase|2|*
[/table]
byte、short、char進行運算的時候自動型別提公升為int,如果再賦值給他們這些型別的變數則需要強制型別轉換,如果超出他們的最大值則會出現溢位現象。
乙個整數常量賦值給long型別的變數時,要在數值後面新增l或l,否則預設的為int型別的資料,在計算的時候出現溢位現象如:
long n = 2147483647*2;
system.out.println(n);
輸出的n值為-2
因為在int範圍內計算2147483647*2出現了溢位,然後將溢位後的int型別的數值-2賦值給long型別的n,所以出錯了,解決辦法可以在其中乙個資料常量後面新增l或者l,這樣他們就在long型別資料範圍內進行計算。
乙個數值常量賦值給float型別的變數時,要在數值後面新增f或f,否則預設為double型別的資料。
賦值運算:首先程式計算等號右邊的算式,計算的時候根據右邊式子的變數情況進行計算,計算得到結果後然後向左邊的變數進行賦值,如果變數的範圍擴大則自動提公升,若變數的範圍縮小則需要進行強制型別裝換。
Java 基本資料型別
基本資料型別 變數持有資料本身的值 引用型別 是某個物件的引用,而並非物件本身 引用型別用在物件上的 乙個物件可以被多個引用所指向,但同一時刻,每個引用只能指向唯一的物件 如果乙個物件被多個引用所指向,那麼無論哪個引用對物件的屬性進行修改,都會反映到其他的引用當中 型別 位數 位元組數 取值範圍 舉...
java 基本資料型別
一 基本資料型別 整型 byte short int long 在計算機中以二進位制補碼格式儲存 浮點型 float double 在計算機中以ieee754格式儲存 字元型 char 在計算機中以unicode碼格式儲存 布林型 boolean 只有true和false兩個值 二 1.長整型 lo...
Java基本資料型別
基本資料型別都是有取值範圍的,若超出範圍,則編譯報錯。位元組型的長度 1byte 位元組 8bit 位 即範圍為 128 127 如 byte b 200 或者 byte b 200,這都是錯誤的 字元型的長度 1char 16位 範圍為0 2 16 短整型的長度 1short 16位 範圍為 2 ...