首頁 > 軟體

Java資料型別分類與基本資料型別轉換

2022-07-26 18:03:22

1.資料型別的分類

Java的資料型別主要分為兩類:基本資料型別參照資料型別

Java中的字串String屬於參照資料型別。因為String是一個類

他們的預設值和位元組大小如下:

 byte型別的取值範圍為-128~127,因為1個位元組=8位元,則一個位元組的區間為:[-128,127]

 計算機儲存有符號的整數時,是用該整數的二補數進行儲存的。

注意事項:

Java中的整型常數預設是int型別,宣告long型別常數需要在數值後面加上“l或L”

Java中的小數預設是double型別,宣告float型別常數需要在數值後面加上“f或F”

2.基本資料型別轉換

(1)自動型別轉換

即隱式型別轉換:將小盒子裝到大盒子裡面,小=>大

型別範圍小的變數,可以直接賦值給型別範圍大的變數。

①底層實現原理如下圖所示:

注:char型別也可以轉換為int型別

char型別存放的unicode字元集,字元底層是二進位制,二進位制也就是數位,並且char佔用2個位元組,小於int的範圍,所以可以轉換為int型別。

A的ASCII碼是65,a的ASCII碼是97;ASCII碼錶中,一個字母的大小寫數值相差32,一般知道大寫字母的ASCII碼數值,其對應的小寫字母的ASCII碼數值就算出來了,是大寫字母的ASCII碼數值“+32”。

0的ASCII碼值為48,1的ASCII碼值為49

②範例:

注意事項:

在表示式中,小範圍型別的變數會自動轉換成當前較大範圍的型別再運算。

在表示式中,byte、short、char 是直接轉換成int型別參與運算的

例:

 此處的i和j在做運算時,被轉換為int型別進行計算,所以資料型別應改為int

思考:為什麼要將資料型別轉換成int進行計算?

因為當兩個數都比較小的時候對結果可能沒有影響,一旦兩個數位都比較大,例如110+120=230,超出了byte的取值範圍,所以索性直接轉換成int進行計算。

(2)強制型別轉換 

型別範圍大的資料或者變數,不能直接賦值給型別範圍小的變數,會報錯。

可以強行將型別範圍大的變數、資料賦值給型別範圍小的變數。

轉換格式:  資料型別   變數 =  (資料型別)   變數1

①範例

 ②底層實現原理

 強轉成byte型別後只保留一個位元組大小的資料,即1101 1100(二補數形式),符號位是1說明是負數,將二補數轉換成原碼後為1010 0100,對應的十進位制為:-36

注意事項: 強制型別轉換可能造成資料(丟失)溢位浮點型強轉成整型,直接丟掉小數部分,保留整數部分返回

到此這篇關於Java資料型別分類與基本資料型別轉換的文章就介紹到這了,更多相關Java資料型別轉換內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com