按大小:

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硬件层面),具有高效存取的特点。