java的基本类型在计算机内的存储形式
Java内一共为我们提供了八种基本类型分别是,byte,short,int,long,float,double以及boolean
首先我们要明白一个单位也就是bit比特是计算机存储的最小单位占用一位可以是0或者1.
而我们其他的基本类型都是由不同的位数组成也就是由指定长度的bit串所描述。
在之前动手解析class文件那个文章中可以看出来,jvm所规定的U1,U2,U4,U8这几种类型的基本单位就是字节分别是一个字节到8个字节的占位。
字节byte是由八个bit组成,按照16进制来看就是两位的16进制表达式
名称 | 占位(bit) | 字节(byte) | 存储数据范围 | 默认值 |
---|---|---|---|---|
byte | 8 | 1 | -128~127 | 0 |
Short | 16 | 2 | 5位数(-32768~32767) | 0 |
Int | 32 | 4 | 10位数(-2147483648~2147483647) | 0 |
long | 64 | 8 | 0L | |
Float | 32 | 4 | 0.0f | |
double | 64 | 8 | 0.0d | |
Char | 16 | 2 | ‘u0000’ | |
Boolean | false |
关于原码,补码以及存储范围的原理这方面的知识可以看文章:https://blog.csdn.net/qq_23418393/article/details/57421688