在c与c++中,基本数据类型的大小在不同机器上可能是不同的,所以,提供sizeof()用于获取实际大小,但是,在Java中,基础数据类型的大小在所有机器上都是一样的,所以Java没有sizeof()方法。
基本类型 | 大小(字节) |
---|---|
byte | 1 |
short | 2 |
int | 4 |
long | 8 |
float | 4 |
double | 8 |
char | 2 |
boolean | - |
tips:
关于boolean的大小:
boolean类型只有两个值:false/true;与其它的几个基本类型不同的是,在Java规范中并没有明确的给出boolean类型的大小,因为在Java虚拟机中,并没有与之对应的类型,而是使用其它的类型代替。一些资料上说在编译后,对于单个boolean值使用int来代替(即4字节),而对于boolean数组,则使用byte数组来代替(即一个boolean占一个字节)。也有一些其它的说法,如果以上说法有误,烦请指正。