1 运算符优先级(高到低)
分隔符->一元运算符(++--之类,右结合)->算数运算符 / 移位运算符->关系运算符->逻辑运算符(与或非等)->三目运算符(布尔表达式,右结合)->赋值运算符
2 变量
可以更改的量,方便操作,可以重复使用 用来保存数据,操作数据
声明方法:数据类型 变量名=值
分类:静态变量(类级别变量,该类所有对象值共享),成员变量(对象级别,对象之间值不共享),局部变量(方法中声明的变量)
局部变量没有默认值,静态变量和成员变量有默认值
调用:{
静态变量:类名.静态变量名 ,如果是当前类中的可以直接写变量名调用
成员变量:对象.成员变量名,
局部变量:只能在当前方法中直接写局部变量名调用
}
如果局部变量和静态变量/成员变量同名,则局部变量优先级大于静态和成员
在方法中,可以使用类名 区分同名的静态变量和局部变量
在成员方法中,可以使用this.区分同名的局部变量和成员变量
3 逻辑运算
&& 和 & : 两边都是true 结果才是true
&& : 短路与,第一个条件为false,则第二个条件不执行
& : 不管第一个条件是否为false,第二个条件依然会执行
|| 和 | : 两边一个为真 结果就为真
|| : 短路或 , 第一个条件就为true,则第二个条件不再执行
| : 不管第一个条件为false还是true,第二个条件都执行
4 数组
用来保存多个相同类型的数据的集合 称为数组
数组是引用数据类型,可以保存和处理多个数据值
数组存储方式是连续存储,每个元素都有下标来标识,数组长度一旦确定不能更改
查询更改快,添加删除慢,添加删除只能新建数组把数据复制进去
数组有一个内置length属性 保存数组的长度
用来保存多个数据,并且查询和更改操作较多的情况下,推荐使用数组
静态声明 : 已知数组中每个元素内容的情况下使用静态声明
数据类型[] 变量名 = {值,值...};
数据类型[] 变量名 = new 数据类型[]{值,值...};
动态声明 : 在不知道数组中每个元素内容的情况下,使用动态声明
数据类型 [ ] 变量名 = new 数据类型[长度];
选择排序:
假设当前这个是最小的
用该数据依次和后面所有数据进行比较,如果发现比当前元素小,就交换下标
比较一轮结束后,当前保存的一定是最小元素的下标
5 面向对象
5.1 类和对象的关系
类:定义属性,描述物体的特征
对象:封装属性值,表示具体的个体