System.out.println(Integer.MAX_VALUE);
System.out.println(Integer.MIN_VALUE);
印刷品:
2147483647
-2147483648
为什么最大值为2 ^ 31 -1(符号位为0且未加到数字的值),而最小值为-2 ^ 31(符号位为1且已加到值)然后??)。
最佳答案
以这种方式思考:将符号位设置为1
的二进制模式与将符号位设置为0
的二进制模式的数量一样多。但是,您还需要表示零,既不是正数也不是负数。因为零表示为全零的模式,所以它从给定位数的可表示正数集中减去,因此可表示负数的计数将增加一个。