A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© gaoer 中级黑马   /  2015-5-12 22:05  /  523 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

128怎么强转成byte结果是-128,求过程

4 个回复

倒序浏览
直接前面加强转加负号啊   这个要什么过程呢?
回复 使用道具 举报
byte类型的数据取值范围是:-128-127
将128转换二进制的时候值为10000000 他的首位为1说明他为负数  补码由正数转变为负数就是要取反在加1
0000000取反为1111111再加一值为10000000 再加上开始的负号所以值就为-128
回复 使用道具 举报
首先,128是int型数据,二进制为:00000000 00000000 00000000 10000000
转换为byte时会丢掉高的24位,留下的是10000000
10000000刚好是-128的二进制位,最高位1表示的这个数数负数。
回复 使用道具 举报
源码:   1  000 0000  反码:   1  111 1111  补码:   1  1000 0000          是不是这样啊 ~!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马