更新時間:2022-08-31 來源:黑馬程序員 瀏覽量:
隱式轉換
隱式轉換也叫自動類型提升。就是把一個取值范圍小的數據或者變量,賦值給另一個取值范圍大的變量。此時不需要我們額外寫代碼單獨實現,是程序自動幫我們完成的。簡單來說就是小的給大的,可以直接給。
兩種提升規則:
取值范圍小的,和取值范圍大的進行運算,小的會先提升為大的,再進行運算。
byte、short、char三種類型的數據在運算的時候,都會直接先提升為int,然后再進行運算。
理解隱式轉換從大到小的關系:
byte short int long float double
例如:
java byte b = 100; int i = b;//可以成功賦值
因為byte的取值范圍是小的,int的取值范圍是大的,在底層進行了隱式轉換,不需要我們額外寫代碼單獨實現,是可以直接賦值。
強制轉換
如果要把一個取值范圍大的數據或者變量賦值給另一個取值范圍小的變量。是不允許直接操作。如果想要直接操作的話,就需要加入強制轉換。目標數據類型 變量名 = (目標數據類型)被強轉的數據;
總結:寫在小括號中的就是想要轉換的類型。強制轉換有可能會導致數據發生錯誤。(數據的精度丟失)