版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_18657175/article/details/89309506
按大小:
byte->short->char->int->boolean->long->double
整型
类型 |
大小 |
封装类 |
byte |
1字节 |
Byte |
short |
2字节 |
Short |
int |
4字节 |
Integer |
long |
8字节 |
Long |
浮点型
类型 |
大小 |
封装类 |
float |
4字节 |
Float |
double |
8字节 |
Double |
其他
类型 |
大小 |
封装类 |
char |
2字节 |
Character |
boolean |
1字节 or 4字节 |
Boolean |
关于boolean的大小
《Java虚拟机规范》一书中的描述:“虽然定义了boolean这种数据类型,但是只对它提供了非常有限的支持。在Java虚拟机中没有任何供boolean值专用的字节码指令,Java语言表达式所操作的boolean值,在编译之后都使用Java虚拟机中的int数据类型来代替,而boolean数组将会被编码成Java虚拟机的byte数组,每个元素boolean元素占8位”。这样我们可以得出boolean类型占了单独使用是4个字节,在数组中又是1个字节。
使用int的原因是,对于当下32位的处理器(CPU)来说,一次处理数据是32位(这里不是指的是32/64位系统,而是指CPU硬件层面),具有高效存取的特点。