设置 int x=2147483648 为什么不报错?

解决方案 »

  1.   

    直接给会报错,
    int x=2147483647;
    int y=x+1;
    这个不报错,y=-2147483648
      

  2.   

    都不报错啊 我 给你个网址你看下这里讲的 你这里x的值 是int范围里的最大值 当最大值+1时 就会变成最小值 就是 -2的 31ci方-1
    http://blog.csdn.net/cin_ie/article/details/49666249
      

  3.   

    会报错啊  会提示你超出了Int范围
      

  4.   

    脑补一下Java 数据类型:
    int 类型占用4个字节,1个字节=8bit,1个bit取值0|1,所以下面的等式就成立了
    二进制Max:01111111111111111111111111111111(符号位+长度)   = 十进制(2147483647)
      

  5.   

    直接用Notepad++编辑MaxInt.java,用命令行编译运行,结果如下public class MaxInt{
    public static void main(String []args){
    int val=2147483648;
    System.out.println(val);
    }
    }
      

  6.   

    int 数值范围-2^32”~2^32-1 即-2147483648~2147483647 超过会报错