Java基本数据类型种类
在Java基本数据类型分为:byte,short,char,int,long,float,double,boolean
名称 | 占内存大小 | 取值范围 |
byte | 1Byte(8bit) | [-128到128)也就是2的8次方 |
short | 2Byte(16bit) | [-32768到32768)也就是2的16次方 |
char | 2Byte(16bit) | [0到65535)也就是2的16次方 |
int | 4Byte(32bit) | [-2147483648到217483648)也就是2的32次方 |
long | 8Byte(64bit) | [-2^63到2^63)也就是2的64次方 |
float | 4Byte(32bit) | [-2^149到2^127)浮点类型 |
double | 8Byte(64bit) | 待议,浮点类型 |
由上图中可以看出所有取值基本都是正负之间,并且是左闭右开。这其中缘由就牵扯到数据的存储方式。在Java中基本数据类型存储在栈中,并且以二进制方式存储,因为存储是有符号的,所以最高位为符号位。0为正数,1为负数。这也就解释了为什么在最大值加一的时候反而得到了最小值。这点如果不明白,需要补一下二进制计算。