【发布时间】:2015-10-18 22:06:35
【问题描述】:
参考 Herbert Schildt 的“Java The complete Reference”第 7 版的第 79 页。 作者说:“如果整数的值大于a的范围 字节,它将被减少模(整数除以的余数)字节的范围”。
java中字节的范围是-128到127。所以一个字节的最大值是128。如果给一个字节分配一个整数值如下所示:
int i = 257;
byte b;
b = (byte) i;
由于 257 跨越了 127 范围,因此 257 % 127 = 3 应存储在“b”中。 但是我得到的输出是 1 而不是 3。 我在理解这个概念上哪里出错了?
【问题讨论】:
-
我认为你引用的作者弄错了。他所说的“字节范围”是什么意思?无论您将其理解为 127(如您所做的那样)还是 128 或 256,它都行不通。 (例如 129%128=1 而(字节)129 = -127)
标签: java