強(qiáng)制類型轉(zhuǎn)換 在評論中看見了兩種特殊情況 求指教
在強(qiáng)制類型轉(zhuǎn)換時,要注意邊界數(shù)風(fēng)險問題,因此存在兩種特殊情況(也是考點所在) 。
特殊1:源數(shù)據(jù)的數(shù)據(jù)位變?yōu)槟繕?biāo)數(shù)據(jù)的符號位
?int i = 129;
byte b=(byte)i;
那么此時b=?
特殊2:大數(shù)據(jù)的數(shù)據(jù)超過了小數(shù)據(jù)的位數(shù)
int i = 257;
byte b =(byte)i;
那么此時b=?
2017-02-01
所以當(dāng)你的int是?0到256時,轉(zhuǎn)換后的byte?值為當(dāng)前int值減去256
比如:int?num1=129;那么轉(zhuǎn)化后為-127
其他情況也是和256有關(guān)系,倍數(shù)關(guān)系的加減
2017-02-01
1、b=-127
2、b=1
2017-02-01
邊界性問題你得先寫出那個數(shù)的補(bǔ)碼,然后還得考慮有沒有溢出的問題