发布网友
共3个回答
热心网友
byte类型和short类型相加,byte类型自动提升为short型,本题中相加结果是(二进制形式,注意首位是符号位)
0000 0000 1000 0000,从short强转成byte型会有精度损失,本题中从两个字节(16位)截取后八位变成byte型,结果是1000 0000,而此数正是-128的二进制表现形式。-128(10)=1000 0000(2),最后类型再提升为short型。
热心网友
这是它默认的一种输出方式当超过他的数值范围是就会自动加上负号以避免程序奔溃...虽然只是根据我平时打的时候的经验判断的大概就是这样...w希望对你有帮助
热心网友
byte 127 二进制表示为: 01111111
short 1二进制表示为:0000000000000001
两者相加: 0000000010000000
强制转换为byte,取后8位: 10000000
10000000的补码就是-128;