【发布时间】:2013-10-17 18:24:44
【问题描述】:
引用oracle website“字节:字节数据类型是一个8位有符号二进制补码整数。它的最小值为-128,最大值为127(含)”。
这里,前两行有效,最后一行无效
byte b = -128;
byte b1 = 127;
byte b2 = b>>>b1;//illegal
Q1) 8 位签名究竟是什么意思?二进制格式的 128 将是 1000 0000,而 -128 将需要一个额外的负号位,如果所有 8 位都被占用,它将适合。
Q2) 对于 int,有一个无符号右移运算符,但这对于字节来说似乎是非法的,为什么会这样。在字节的情况下不能防止溢出。在case of int, it works
感谢您的帮助
【问题讨论】:
标签: java int byte bit-manipulation