Java中是分了4種,byte short int long。我想問的是byte為什么不能用以下編程。byte b1=12byte b2=11byte i=b2-b1?結(jié)果為-1 ?byte不是2的8次方可能,一半正數(shù)一半負數(shù),為什么-1不行?什么情況下可以用byte求大神
3 回答

Iris_Spoon
TA貢獻1條經(jīng)驗 獲得超0個贊
Java中byte類型不能做這種數(shù)值運算,這是Java設(shè)計時的規(guī)定。就像定義小數(shù)時默認double類型一樣,這種運算會自動轉(zhuǎn)化為int類型,這里提出兩種改法:1. ? ?int i=b2-b1; ? ? ? ? ? ? ? ?2. ? ?byte i=(byte)(b2-b1);
添加回答
舉報
0/150
提交
取消