黑马程序员技术交流社区
标题:
强转求解
[打印本页]
作者:
gaoer
时间:
2015-5-12 22:05
标题:
强转求解
128怎么强转成byte结果是-128,求过程
作者:
q8893616
时间:
2015-5-12 22:22
直接前面加强转加负号啊 这个要什么过程呢?
作者:
赵旗
时间:
2015-5-12 22:23
byte类型的数据取值范围是:-128-127
将128转换二进制的时候值为10000000 他的首位为1说明他为负数 补码由正数转变为负数就是要取反在加1
0000000取反为1111111再加一值为10000000 再加上开始的负号所以值就为-128
作者:
yky1678
时间:
2015-5-12 22:31
首先,128是int型数据,二进制为:00000000 00000000 00000000 10000000
转换为byte时会丢掉高的24位,留下的是10000000
10000000刚好是-128的二进制位,最高位1表示的这个数数负数。
作者:
gaoer
时间:
2015-5-12 22:34
源码: 1 000 0000 反码: 1 111 1111 补码: 1 1000 0000 是不是这样啊 ~!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2