日期:2014-05-20  浏览次数:20674 次

java中int 类型的范围是:-2147483648 到2147483648 那他能表示最大的数是2147483648 吗?为什么啊?
java中int 类型的范围是:-2147483648 到2147483648 那他能表示最大的数是2147483648 吗?为什么啊?

------解决方案--------------------
int 类型的范围是 -2147483648...2147483647
因为int 所占的字节数为4个字节,即32位.对于正数,它的最高位是0,所以它最大能表示的数是01111....(后面共31个1),而这个数化成十进制即是2147483647.对于负数也是同理.
------解决方案--------------------
负数能表示的最小数的二进制数为1000..(后面共31个0),化为十进制数即为-int 类型的范围是 -2147483648
------解决方案--------------------
范围是 -2147483648<= <=2147483647 ,楼主要详细了解的话可以去借一本关于计算机组成原理的书

------解决方案--------------------
他自己定义的...你可以参考jdk源码 java-lang-Integer.java文件

Java code
    /**
     * A constant holding the minimum value an <code>int</code> can
     * have, -2<sup>31</sup>.
     */
    public static final int   MIN_VALUE = 0x80000000;

    /**
     * A constant holding the maximum value an <code>int</code> can
     * have, 2<sup>31</sup>-1.
     */
    public static final int   MAX_VALUE = 0x7fffffff;

------解决方案--------------------
c/c++跟计算机组成原理有关

但java 是运行在虚拟机上的,跟那个没关...位数是他自己定义的