java標(biāo)識(shí)符 在什么情況下會(huì)發(fā)生自動(dòng)類型轉(zhuǎn)換?
在什么情況下會(huì)發(fā)生自動(dòng)類型轉(zhuǎn)換?自動(dòng)轉(zhuǎn)換遵循以下規(guī)則:1)如果所涉及的操作類型不同,則首先將它們轉(zhuǎn)換為相同的類型,然后執(zhí)行該操作。2)根據(jù)數(shù)據(jù)長(zhǎng)度的增加方向進(jìn)行轉(zhuǎn)換,以確保準(zhǔn)確性。例如,在int類型和
在什么情況下會(huì)發(fā)生自動(dòng)類型轉(zhuǎn)換?
自動(dòng)轉(zhuǎn)換遵循以下規(guī)則:
1)如果所涉及的操作類型不同,則首先將它們轉(zhuǎn)換為相同的類型,然后執(zhí)行該操作。
2)根據(jù)數(shù)據(jù)長(zhǎng)度的增加方向進(jìn)行轉(zhuǎn)換,以確保準(zhǔn)確性。例如,在int類型和long類型的操作中,int數(shù)量在操作之前轉(zhuǎn)換為long類型。
a.如果這兩種類型的字節(jié)數(shù)不同,請(qǐng)將它們轉(zhuǎn)換為字節(jié)數(shù)更大的類型
B.如果這兩種類型的字節(jié)數(shù)相同,并且一種是有符號(hào)的,另一種是無(wú)符號(hào)的,請(qǐng)將它們轉(zhuǎn)換為無(wú)符號(hào)的類型
3)所有浮點(diǎn)運(yùn)算都以雙精度執(zhí)行,即使表達(dá)式只包含浮點(diǎn)單精度運(yùn)算,應(yīng)先將其轉(zhuǎn)換為雙精度類型,然后再進(jìn)行運(yùn)算。
4)當(dāng)char type和short type參與操作時(shí),必須首先將它們轉(zhuǎn)換為int type。
5)在分配操作中,當(dāng)分配號(hào)兩側(cè)的數(shù)量數(shù)據(jù)類型不同時(shí),分配號(hào)右側(cè)的數(shù)量類型將轉(zhuǎn)換為左側(cè)的數(shù)量類型。如果右數(shù)量的數(shù)據(jù)類型長(zhǎng)度大于左數(shù)量的數(shù)據(jù)類型長(zhǎng)度,則會(huì)丟失部分?jǐn)?shù)據(jù),這會(huì)降低精度,丟失的部分會(huì)向前舍入。
什么是自動(dòng)類型轉(zhuǎn)換?
在理解自動(dòng)類型轉(zhuǎn)換之前,我們必須理解這樣一個(gè)原則:“自動(dòng)類型轉(zhuǎn)換可以從表號(hào)范圍小的類型轉(zhuǎn)換到表號(hào)范圍大的類型”。因此,自動(dòng)類型轉(zhuǎn)換意味著小數(shù)據(jù)可以轉(zhuǎn)換為大數(shù)據(jù),而大數(shù)據(jù)將失去準(zhǔn)確性。自動(dòng)類型是兩個(gè)不同大小的數(shù)據(jù),將小數(shù)據(jù)轉(zhuǎn)換成大數(shù)據(jù)進(jìn)行操作。Java高級(jí)編程語(yǔ)言是一種類型語(yǔ)言,編程過(guò)程中對(duì)數(shù)據(jù)類型的限制比較嚴(yán)格。