Java基础
数据类型
类型 | 字节数 | 范围 | 举例 |
---|---|---|---|
byte | 1 | $-128\sim 127$ ($-2^7\sim 2^7 - 1$) | 123 |
short | 2 | $-2^{15}\sim 2^{15} - 1$ | 12345 |
int | 4 | $-2^{31}\sim 2^{31} - 1$ | 12345678 |
long | 8 | $-2^{63}\sim 2^{63} - 1$ | 1234567890123L |
float(高精度) | 4 | $-2^{31}\sim 2^{31} - 1$ | 1.2F |
double(高精度) | 8 | $-2^{63}\sim 2^{63} - 1$ | 1.3, 1.3D |
boolean | 1 | true/false | |
char | 2 | ‘A’ |
为什么byte的范围为$-2^7\sim 2^7 - 1$?
Java中所有整数类型都是使用补码来表示有符号整数
1 byte = 8 bit
8 bit的表示方法:0000 0000,每一位只有0 1,也就是二进制在字节数范围表示中规定:
- 第一位如果是0:表示正数
- 第一位如果是1:表示负数
最小值:1000 0000 表示-128
最大值:0111 1111 表示127
十进制 原码(二进制) 反码 补码 +5
0000 0101
- 0000 0101
-5
1000 0101
(原码)1111 1010
(反码)1111 1011
(补码)-1
1000 0001
(原码)1111 1110
(反码)1111 1111
(补码)-128
无 无 1000 0000
(特殊情况)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 JasonQian's Blog!