猿问
关于循环的问题
int x = 800000000;
while (x>0)
x++;
System.out.println(x);
为什么结果是-2147483648
陈药
浏览 1303
回答 3
3回答
深白
加到int 表示的最大正整数后x依然大于0,继续执行x++,就溢出了,变成最小值了,看看补码的知识吧。
0
0
1
chasonZhang
int的最大值是2147483647 = 1111111 11111111 11111111 111111111111111 11111111 11111111 11111111+1=10000000 00000000 00000000 00000000=-2147483648注:最左边的一位代表符号
0
0
1
随时随地看视频
慕课网APP
相关分类
Java
我要回答