首頁技術(shù)文章正文

Java培訓(xùn):面向?qū)ο蟮碾[式轉(zhuǎn)換和強(qiáng)制轉(zhuǎn)換

更新時間:2022-08-31 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

隱式轉(zhuǎn)換

隱式轉(zhuǎn)換也叫自動類型提升。就是把一個取值范圍小的數(shù)據(jù)或者變量,賦值給另一個取值范圍大的變量。此時不需要我們額外寫代碼單獨實現(xiàn),是程序自動幫我們完成的。簡單來說就是小的給大的,可以直接給。

兩種提升規(guī)則:
取值范圍小的,和取值范圍大的進(jìn)行運算,小的會先提升為大的,再進(jìn)行運算。

byte、short、char三種類型的數(shù)據(jù)在運算的時候,都會直接先提升為int,然后再進(jìn)行運算。

理解隱式轉(zhuǎn)換從大到小的關(guān)系:

byte short int long float double

例如:

java
byte b = 100;
int i = b;//可以成功賦值

因為byte的取值范圍是小的,int的取值范圍是大的,在底層進(jìn)行了隱式轉(zhuǎn)換,不需要我們額外寫代碼單獨實現(xiàn),是可以直接賦值。

強(qiáng)制轉(zhuǎn)換

如果要把一個取值范圍大的數(shù)據(jù)或者變量賦值給另一個取值范圍小的變量。是不允許直接操作。如果想要直接操作的話,就需要加入強(qiáng)制轉(zhuǎn)換。
目標(biāo)數(shù)據(jù)類型 變量名 = (目標(biāo)數(shù)據(jù)類型)被強(qiáng)轉(zhuǎn)的數(shù)據(jù);

總結(jié):寫在小括號中的就是想要轉(zhuǎn)換的類型。強(qiáng)制轉(zhuǎn)換有可能會導(dǎo)致數(shù)據(jù)發(fā)生錯誤。(數(shù)據(jù)的精度丟失)



分享到:
在線咨詢 我要報名
和我們在線交談!