byte类型的11111111为什么是-1

2025-03-24 17:46:11
推荐回答(3个)
回答1:

-1的原码是10000001,负数的补码是原码(除符号位外)各位求反加1,除符号位各位求反后是11111110,再加1就刚好是11111111。

回答2:

因为它是一个有符号的数

11111111是它的补码形式

你知道补码吧!

你把它返回原码就知道了

回答3:

byte的范围是-127~128,你超出了范围,比如int型的范围是-2的32次放到2的32次方,超出了范围,int结果会给你0