基本数据类型
- byte - 字节型 1个字节 => 27~ 27-1 => -128~127
- short - 短整型 2个字节 => -215 ~215-1 => -32768~32767
- int - 整型 4个字节 => - 231~231-1 => -2.1109~2.1109 => Java中,整数默认为int类型
- long - 长整型 - 8个字节 => -263~263-1 => -1018~1018 需要以L/l作为结尾标记
- float - 单精度 - 4个字节 => -1038~1038 => 需要以f/F作为结尾
- double - 双精度 - 8个字节 => -10308~10308 Java中小数默认为double类型 - 小数结尾可以添加D/d作为标记
- char - 字符型 - 2个字节 => 0~65535 - 存储用的就是utf-16
引用数据类型
- 数组 [ ]
- 类 class
- 接口 interface
数据类型的转换
隐式转换/自动类型转换
规律一:小的类型自动转化为大的类型
int i = 10 ;
double j = i ;
规律二:整数类型可以自动转化为浮点类型,可能会产生舍入误差
float i = 2 + 8f;
float B = i - 9.9f;
System.out.println(B);
result : 0.10000038
规律三:字符可以自动提升为整数
显式转换/强制转换
规律一:当把大的类型转化为小的类型的时候,因为补码的换算问题,所以可能会产生一些想不到数据
int i = 129;
byte b = (byte)i;
result : -127
规律二:小数在转化为整数的时候是舍弃小数位
double d = 6.4;
int i = (int)d;
result : 6