Java数据类型分为两种:
- 基本数据类型(8个)
- 引用数据类型(无穷个)
基本数据类型
基本数据类型又分为四种:
- 整型(4个)
- 浮点型(2个)
- 字符型(1个)
- 布尔型(1个)
整型
- byte 字节型
- short 短整型
- int 整型
- long 长整型
byte 字节型
1字节 == 8bit
由八位二进制数表示,256种组合
第一位记录符号:0-正数、1-负数
数值范围:-128 ~ 127
short 短整型
2字节 == 16bit
由十六位二进制数表示,65526种组合
第一位记录符号:0-正数、1-负数
数值范围:-32768 ~ 32767
int 整型
4字节 == 32bit
数值范围:-2147483648 ~ 2147483647long 长整型
8字节 == 64bit
使用long时需要在赋值的时候在值的后面加上(非必须)L(或l)
非必须:如果值大于int的取值范围就需要加L,否则可以不加
例如:long max = 2147483648L
总结:
1.以上整数类型的字节都是依次乘2
都以第一位记录符号:0-正、1-负
浮点型
- float 单精度浮点型
- double 双精度浮点型
float 单精度浮点型
4字节 == 32bit
二进制由三部分组成:第1位记录符号(0-负、1-正)、2 ~ 7位记录整数部分、其余记录小数部分
使用float时需要在赋值的时候在值的后面加上(必须)F(或f)
因为小数默认以64bit位存储,因此需要类型转化
例如:float max = 3.4F
double 双精度浮点型
8字节 == 64bit
二进制由三部分组成:第1位记录符号(0-负、1-正)、2 ~ 20位记录整数部分、其余记录小数部分
字符型
- char 字符型
char 字符型
2字节 == 16bit
编码:Unicode
因字符中数字和整数的数字冲突,为了以示区分,每一个字符前后都在英文输入法状态下加单引号 '
布尔型
- boolean 布尔型
boolean 布尔型
1bit
值:true、false
引用数据类型
常见的引用数据类型:
- 数组[]
- 类 class(字符串String、抽象类abstract class)
- 接口 interface
- 枚举 enum
- 注解 @interface
- 等等