int型
JAVA中最常有的基本类型:首先JDK中定义int占4个字节32位(后面全部的计算都是以此为根据的)
32位就是jvm仅仅给分配32个格子的空间,用以存放数据。
总所周知计算机中用0和1存放数据。
那么,32个格子中放满0或1的方法 有2的32次方种:
所以。这32个格子中。或者说32位的空间能标识10进制的数字:
最小:
0 | 0| 0 | 0| 0 | 0| 0 | 0| 0 | 0| 0 | 0| 0 | 0| 0 | 0| 0 | 0| 0 | 0| 0 | 0
最大:
1 |1| 1 | 1| 1 |1| 1 | 1| 1 | 1| 1| 1 | 1| 1 | 1| 1 | 1| 1 | 1| 1 | 1 | 0
将二进制最大的数字(32个1)转换成10进制,即 4294967296;
可惜。上面这样的计算的是无符号。即正数。可是java中int有正负之分。所以32个格子中占用一个格子标识正负。
还有一个格子用了 x来标识 正负数,所以仅仅能用31个格子来标识数值。
最后int能标识的最大/最小数字是:2的31次方:+/- 2147483648