java中的int的范围从0到多少

来源:百度知道 编辑:UC知道 时间:2024/05/24 14:06:50

首先jdk中定义int占4个字节, 32位(后面全部的计算都是以此为根据的)

32位就是jvm仅仅给分配32个格子的空间,用以存放数据。

总所周知计算机中用0和1存放数据。

那么,32个格子中放满0或1的方法 有2的32次方种:或者说32位的空间能标识10进制的数字。



延展阅读:

一种推算法:将二进制最大的数字(32个1)转换成10进制,即 4294967296;另外一种推算法:既然有2的32次方种算法,那么依照10进制最大的数就是2的32次方。

上面这样的计算的是无符号。即正数。可是java中int有正负之分。所以32个格子中占用一个格子标识正负。所以仅仅能用31个格子来标识数值。



public class Print {
public static void main(String[] args) {
System.out.println("最大:" + Integer.MAX_VALUE);
System.out.println("最小:" + Integer.MIN_VALUE);
}
}

程序测试的输出为:
最大:2147483647
最小:-2147483648

四个字节,-2147483648~2147483647

纠正下,不是从0开始的是从一个负数开始的。
java中的int类型存储长度为32bit.所以范围是“-2^32”到“2^32-1”;
也就是“-2147483648”到“2147483647”;

正负21亿左右