类型 | 位数 | 字节数 | 取值范围 |
---|---|---|---|
byte | 8 | 1 | -2^7 ~ 2^7-1 |
short | 16 | 2 | -2^15 ~ 2^15-1 |
int | 32 | 4 | -2^31 ~ 2^31-1 |
long | 64 | 8 | -2^63 ~ 2^63-1 |
float | 32 | 4 | 2^-149 ~ 2^128-1 |
double | 64 | 8 | 2^-1074 ~ 2^1024-1 |
char | 16 | 2 | 0 ~ 2^16-1 |
boolean: 没有固定大小根据虚拟机定义
Bit(位)、byte、字节、汉字的关系
1 bit = 1 二进制数据
1 byte = 8 bit
1 字母 = 1 byte = 8 bit
1 汉字 = 2 byte = 16 bit
- bit:位
一个二进制数据0或1,是1bit; - byte:字节
存储空间的基本计量单位,如:MySQL中定义 VARCHAR(45) 即是指 45个字节;
1 byte = 8 bit - 一个英文字符占一个字节;
1 字母 = 1 byte = 8 bit - 一个汉字占2个字节;
1 汉字 = 2 byte = 16 bit - 标点符号
- 汉字输入状态下,默认为全角输入方式;
- 英文输入状态下,默认为半角输入方式;
- 全角输入方式下,标点符号占2字节;
- 半角输入方式下,标点符号占1字节;
故:汉字输入状态下的字符,占2个字节 (但不排除,自己更改了默认设置);英文输入状态下的字符,占1个字节 (但不排除,自己更改了默认设置);