問題:a是int類型的資料,那麼a+1大于a嗎?
很多人的回答都是:大于
其實真正的回答是——不一定
為什麼這麼說?
因為假如a=Integer.MAX_VALUE,a再加1,結果是Integer.MIN_VALUE
比如:System.out.println((Integer.MAX_VALUE+1) == Integer.MIN_VALUE);
輸出結果是true
原理:
int 的取值範圍是 -2147483648 ——2147483647
2147483647 的二進制數是01111111 11111111 11111111 11111111
1111111 11111111 11111111 11111111 + 1 =10000000 00000000 00000000 00000000
10000000 00000000 00000000 00000000就是-2147483648