程式中要求參與的計算的資料,必須要保證資料型別的一致性,如果資料型別不一致將發生型別的轉換。
自動轉換
byte 型別記憶體占有1個位元組,在和 int 型別運算時會提公升為 int 型別 ,自動補充3個位元組,因此計算後的結果還是 int 類 型。
同樣道理,當乙個 int 型別變數和乙個 double 變數運算時, int 型別將會自動提公升為 double 型別進行運算。
轉換規則
範圍小的型別向範圍大的型別提公升, byte、short、char 運算時直接提公升為 int
double 型別記憶體8個位元組, int 型別記憶體4個位元組。 1.5 是 double 型別,取值範圍大於 int 。可以理解為 double 是8 公升的水壺, int 是4公升的水壺,不能把大水壺中的水直接放進小水壺去。 想要賦值成功,只有通過強制型別轉換,將 double 型別強制轉換成 int 型別才能賦值。
同樣道理,當乙個 short 型別與 1 相加,我們知道會型別提公升,但是還想給結果賦值給short型別變數,就需要強制轉換。
強制型別轉換:將 取值範圍大的型別 強制轉換成 取值範圍小的型別 。
比較而言,自動轉換是**自動執行的,而強制轉換需要我們自己手動執行。
轉換格式: 資料型別 變數名 = (資料型別)被轉資料值;
// double型別資料強制轉成int型別,直接去掉小數點。
int i= (int)3.5;
強烈注意
浮點轉成整數,直接取消小數點,可能造成資料損失精度。
int 強制轉成 short 砍掉2個位元組,可能造成資料丟失。
資料型別與轉換
1.set 集合 特點 無序,自動去重,不可修改 無序導致無法定位修改的資料 定義語法 setvar 2.dict 字典 特點 無序,可獲取 通過定位鍵修改對應的值 定義語法 dictvar 3.字典的鍵 和 集合的值的資料型別要求 必須為不可變資料 可雜湊的資料型別 即number int,flo...
資料型別與轉換
在python的世界中只有int,float,string 簡寫str 三種型別的變數。並不像c裡面的float,double那樣分得特別細 若使用三引號邊是多行固定格式固定的字串 或注釋 它與 整數運算結果永遠精確 的特點不同,計算機裡浮點數的運算是不精確的,會有四捨五入的誤差。這是因為,pyth...
資料型別的轉換與進製轉換
資料型別 資料型別包括基本資料型別和引用資料型別 這裡我們側重講一下基本資料型別 基本資料型別包括 整數型別,浮點型別 字串型別,字元型別 整數型別有四種 1.byte 儲存的資料佔乙個子節,乙個位元組佔8個位元位 位元位是資料的最小單位 取值範圍 128 127 2.short 短整型 佔兩個位元...