1、基本数据类型
每一种数据类型,可以看作一个容器,四个容器的区别是容量不同。
1.1、整数类型
整数类型分为byte、short、int、long用于存放整数
| 类型 | 占用字节数 | 范围 |
|---|---|---|
| byte | 1 | -128~127 |
| short | 2 | -2^15 ~ 2^15-1 约等于 正负3万多 |
| int | 4 | -2^31 ~ 2^31-1 约等于 正负21亿 |
| long | 8 | -2^63 ~ 2^63-1 |
1.2、小数类型(浮点类型)
小数类型分为float、double,小数类型要大于整数类型
| 类型 | 占用字节数(小数位) | 精度 |
|---|---|---|
| float | 4 | 单精度 |
| double | 8 | 双精度 |
注意:
1.小数类型默认常量为double,如果要声明float类型,小数后面必须加”F”或”f”。
2.通常情况下,应该使用double类型,以其更为精确。
1.3、逻辑类型
boolean 布尔类型 只能取值ture或false,表示最基础的逻辑,通常用于程序流程控制。
字面值:
true 对,正确,真…
false 错,错误,假…
boolean flag = true;
注意: 布尔类型不可以用 0 或 非0 的整数替代 false 或 ture
1.4、字符类型
char 类型 表示字符
1.可以表示单个字符 2.可以无符号表示 3.字符常量用单引号括起
字符和字符串的区别:
“abc” — 字符串
“a” — 字符
char 占用2个字节
还可以无符号表示整数 0~2^16-1 -> 65535
总结:
基本数据类型有8种
| byte | short | int | long | float | double | boolean | char |
|---|---|---|---|---|---|---|---|
| 1 | 2 | 4 | 8 | 4 | 8 | 2 |
8种基本数据类型排序:
bayte -> short (char) -> int ->long ->float ->double
String字符串不是基本数据类型,是引用数据类型。
2.基本数据类型转换
2.1、自动类型转换
自动类型转换:在进行赋值或运算时,精度(容量)小的类型自动转换为精度(容量)大的类型。
理解:小容量的数据转换到大容量
代码示例:
public class Demo01{ |
2.2、强制类型转换
大容量的数据转换到小容量,必须加上强制类型转换符。
强制类型转换符问题:
问题1:溢出,数据丢失,不会报错
问题2:精度丢失
只要最终转换的小于等于要转换的就没问题
2.3、其他特殊转换
shuort和char转换

public class Demo03{ |
byte short char只要参与运算 首先提升为int类型
public class Demo04{ |
两个不同类型运算结果是更大的类型,两个相同类型运算结果一定是这个类型。
public class Demo05{ |