【发布时间】:2021-03-03 03:53:17
【问题描述】:
int maxAgain = 2147483647+1;
System.out.println(maxAgain);
int maxAgain1 = 2147483648
System.out.println(maxAgain1);
为什么 maxAgain 和 maxAgain1 有区别。
注意:
- 整数最大值:2147483647
- 整数最小值:-2147483648
这里 maxAgain 运行成功,maxAgain1 报错。
【问题讨论】:
-
第一个有效,因为它溢出并导致下一个值,在这种情况下是 -2147483648 但第二个是不允许的,因为您不能为 int 分配一个不在允许的范围。