Java中的自動(dòng)類型轉(zhuǎn)換規(guī)則如下:
- 當(dāng)兩個(gè)操作數(shù)中有一個(gè)為double類型時(shí),另一個(gè)操作數(shù)會(huì)被自動(dòng)轉(zhuǎn)換為double類型。
- 當(dāng)兩個(gè)操作數(shù)中有一個(gè)為float類型,另一個(gè)操作數(shù)會(huì)被自動(dòng)轉(zhuǎn)換為float類型。
- 當(dāng)兩個(gè)操作數(shù)中有一個(gè)為long類型,另一個(gè)操作數(shù)會(huì)被自動(dòng)轉(zhuǎn)換為long類型。
- 當(dāng)兩個(gè)操作數(shù)中有一個(gè)為int類型,另一個(gè)操作數(shù)會(huì)被自動(dòng)轉(zhuǎn)換為int類型。
- 當(dāng)兩個(gè)操作數(shù)中有一個(gè)為short類型,另一個(gè)操作數(shù)會(huì)被自動(dòng)轉(zhuǎn)換為int類型。
- 當(dāng)兩個(gè)操作數(shù)中有一個(gè)為byte類型,另一個(gè)操作數(shù)會(huì)被自動(dòng)轉(zhuǎn)換為int類型。
需要注意的是,如果兩個(gè)操作數(shù)都是整型,且其中一個(gè)操作數(shù)的范圍超過了另一個(gè)操作數(shù)的范圍,那么較小范圍的操作數(shù)會(huì)被自動(dòng)轉(zhuǎn)換為較大范圍的操作數(shù)類型。