很多場合都要用到類型轉(zhuǎn)換,JAVA的類型轉(zhuǎn)換有下列兩種。
自動類型轉(zhuǎn)換
整型,實(shí)型,字符型數(shù)據(jù)可以混合運(yùn)算。在運(yùn)算過程中,不同類型的數(shù)據(jù)會自動轉(zhuǎn)換為同一類型,然后進(jìn)行運(yùn)算。自動轉(zhuǎn)換按低級類型數(shù)據(jù)轉(zhuǎn)換成高級類型數(shù)據(jù)的規(guī)則進(jìn)行,
轉(zhuǎn)換規(guī)則為:
(1)(byte 或 short)op int -> int
(2)(byte 或 short 或 int) op long -> long
(3)(byte 或 short 或 int 或 long) op float -> float
(4)(byte 或 short 或 int 或 long 或 float)op double ->double
(5)char op int ->int
其中,箭頭左邊表示參與運(yùn)算的數(shù)據(jù)類型,op為運(yùn)算符如加減乘除等,右邊表示運(yùn)算結(jié)果的數(shù)據(jù)類型。
如: 3+4.5 是 double型,所以3貝轉(zhuǎn)換為double型,然后再與4.5相加,其結(jié)果也為double型。
強(qiáng)制類型轉(zhuǎn)換
高級數(shù)據(jù)類型你個(gè)要轉(zhuǎn)換成低級數(shù)據(jù)類型,需要用到強(qiáng)制類型轉(zhuǎn)換。其一般形式為:
(類型名)表達(dá)式
例如:
int i;
byte b;
i = 356;
b=(byte)i; //強(qiáng)制轉(zhuǎn)換吼丟失一部分?jǐn)?shù)據(jù),使得b的值為100
一般使用強(qiáng)制類型轉(zhuǎn)換可能會導(dǎo)致數(shù)值溢出或精度下降,應(yīng)盡量避免。