1.1 按数据类型分类
1.1.1 基本数据类型(四类八种)
☛ 引用数据类型的特点
存的是地址值,可以为null值
☛ 基本数据类型的特点
存的是具体的值,不可以是null值
☛ 整型
整型
取值范围
字节数
byte(字节)
-128 ~ 127
1byte
short(短整型)
-
2byte
int(默认整型)
-
4byte
long(长整型)
12345678L
8byte
☛ 浮点
浮点数
字节数
例子
float(单精度)
4byte
0.98f
double(双精度)默认
8byte
0.98
☛ 布尔
boolean(true/false) 1/8byte
☛ 字符
char 0~65535 2byte
注:需要注意这8种在内存中的存储大小,便于后续的性能调优工作。
1.1.2 计算机的组成原理&程序的运行原理
1.1.2.1 计算机的组成(冯 • 诺依曼计算机)
存储器:
内存条(RAM) ==> 临时性存储数据 ==> 断电,数据丢失
硬盘(ROM) ==> 持久性存储数据 ==> 断电,数据不丢失
1.1.2.2 程序的执行原理
由硬盘的程序加载到内存中,由cpu调配
cpu:中央处理器 ==> 运算和存储数据
gpu:显卡 ==> 读取图片等
1.1.2.3 程序的性能调优
☞ 处理多大的数据,就用多大的容器(即变量/对象)存储;
不要无节制地创建容器
☞ 程序是自上而下执行的,没有执行必要的代码,要想方设法地结束程序
☞ 只需要一个引用类型开辟的内存空间,那么要注意不要被多次重新创建
1.2 按声明的位置分类
二、变量的写法
① = ;
② ;
= ;
③ = , = ...;
④ , ...;
三、数据类型转换
① 隐式数据类型
byte b = 123;
解析:先判断int类型的123是否超出了byte类型的取值范围,没有超出,则把int 123 转为 byte 123,再赋值给变量b
② 自动类型提升
double d = 12563L;
结论:容量(取值范围)小的数据类型可以自动提升为容量大的,byte到double的提升:
byte、short、char —> int —> long —> float —> double
③ 强制类型转换(自动类型提升的逆过程)
byte b = (byte) 128;
结论:容量大的数据类型需要强制转换为容量小的。
注:强制类型转换,有可能损失精度。