Java中int的取值范围是-2^32~2^32-1。
先上代码,通过下面代码的执行结果观察
- public class Test {
- public static void main(String[] args) {
- // 2的31次方
- int j = (int) Math.pow(2,31);
- System.out.println("j的值" + j);
- }
- }
运行结果:
j的值2147483647
继续修改代码
- public class Test {
- public static void main(String[] args) {
- // 2的31次方
- int j = (int) Math.pow(2,32);
- System.out.println("j的值" + j);
- }
- }
运行结果(同上面代码):
j的值2147483647
- public class Test {
- public static void main(String[] args) {
- int j = 2147483647;
- System.out.println("j+1的值" + (j + 1));
- }
- }
j+1的值: -2147483648
这里是负值,int的最小值
即当int的最大值+1后,会变成int的最小值
故java中int的取值范围是-2^31~2^31-1,即-2147483648~2147483647。