java基本数据类型
八大基本数据类型
整型:byte、short、int、long
| 类型 | 存储 | 取值范围 |
|---|---|---|
| int | 4字节 | -2^31 ~ 2^31-1 |
| short | 2字节 | -2^15 ~ 2^15-1 |
| long | 8字节 | -2^63 ~ 2^63-1 |
| byte | 1字节 | -2^7 ~ 2^7-1 |
原码=符号位+真值
例如,5=0000 0101=4+1、8=0000 1000=8、-3=1000 0011=-(2+1)
反码:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
例如,5的反码是0111 1010,8的反码是0111 0111,-3的反码是 1111 1100
补码:正数的补码与原码相同,负数的补码等于其反码的末位加1。
例如,5的补码是0111 1011,8的补码是0111 1000,-3的补码是 1111 1101
计算机中,数字都是用补码表示。 例如byte有1个字节,一个字节有8个比特。每个比特可以是0或1。其中第一位用来表示正负,0正1负。最小整数0000 0000=0,最大整数0111 1111=127。1000 0001=-127,1000 000 =-128
二进制:0b1111 0000 1010 0101、0B1010 1010 0000 0000
八进制:013 32 82 32、023 23 34 45
十六进制:0xCAF9、0XA901
长整型long:2345l、8765L Ps:java 没有任何无符号形式的int、long、short或byte类型。
浮点型:flow、double
| 类型 | 存储 | 取值范围 |
|---|---|---|
| float | 4字节 | |
| double | 8字节 |
flow类型的数据后缀为F或f,没有则默认是double类型。或者直接添加后缀D或d。
例如、12.32f、23.43F、12.34、34.345D