Java数据类型与其取值范围
首先,任何类型的第一个字节的第一位用来表示正负。其次,一个字节有8位。 最后,0归于正数范围。
byte类型
占用空间: 1字节
取值范围: [-2^7, 2^7-1] / [-128, 127] (为什么为7次幂? 答:第一个字节的第一位用来表示正负,所以少一位。
为什么最大取值为 2^7 -1(为什么减一)? 答:0也属于正数,所以要减一)
short类型
占用空间: 2字节
取值范围: [-2^15, 2^15-1] / [-32768, 32767] (为什么为2的15次幂? 答:两个字节, 2*8-1 = 15)
int类型
占用空间: 4字节
取值范围: [-2^31, 2^31-1] / [-21亿, 21亿]
long类型
占用空间: 8字节
取值范围: [-2^63, 2^63-1]