Java整数类型的长度及取值范围

首先,来看看in类型: int类型的长度占32位,即4个字节(1字(word)=2字节(byte)=16位(bit)),取值范围为:-(2的31次方)到(2的31次方)-1,即-2147483648~2147483647 测试如下: 我们知道,计算机是采用二进制来存储数据的,intl类型的最大值在计算机里的存储为:01111111111111111111111111111111(32) 最高位表示符号位,0表示正数,1表示负数,这里在用Integer.toBinaryString(n);转二进制输出后把0省略掉了。那么再转回十进制,就相当于计算等比数列2^(n-1)的前n项和,这里n=31,最终结果为(2的31次方)-1。 int类型的最小值的二进制为:10000000000000000000000000000000(32) 转为十进制就为 -(2的31次方)

类型 *******长度 ******* 取值范围 byte *******8位 ****** -128 ~ 127 short ******16位 ****** -32768 ~ 32767 int *********32位 ****** -2147483648 ~ 2147483647 long *******64位 ****** -9223372036854775808 ~ 9223372036854775807 char *******16位 ****** 0 ~ 65535

经验分享 程序员 微信小程序 职场和发展