0x00:运算符和表达式
运算符:对常量或者变量进行操作的符号
表达式:用运算符把常量或者变量连接起来符合 Java 语法的式子称为表达式。不同运算符连接的表达式体现的是不同类型的表达式 。
举例说明:
int a = 10;
int b = 20;
int c = a + b;
+ 是运算符,并且是算术运算符, a + b 是表达式,由于 + 是算术运算符,这个表达式叫做算术表达式
算术运算符:
符号 | 作用 | 说明 |
---|---|---|
+ | 加 | |
- | 减 | |
* | 乘 | |
/ | 除 | |
% | 取余 | 获取的是两个数据做除法的余数 |
注意事项:
/ 和 % 的区别:两个数做除法,/ 取结果的商, %取结果的余数。
整数操作只能得到整数, 要想得到小数,必须有浮点数参与运算。
0x01:字符加操作
算符表达式中包含多个基本数据类型的值的时候,整个算术表达式的类型会自动提升。
提升规则:
- byte 类型, short 类型和 char类型会被提升到 int类型。
整个表达式的类型自动提升到表达式中最高等级操作数同样的类型。
等级顺序: byte < short < char < int < long < float < double<br />![image.png](https://cdn.nlark.com/yuque/0/2021/png/1442084/1636532610113-9cb9f1bb-6c8c-48d6-bc7e-067e8408042a.png#clientId=u48e6d1ef-13ef-4&from=paste&height=231&id=ud05a58e4&margin=%5Bobject%20Object%5D&name=image.png&originHeight=461&originWidth=1315&originalType=binary&ratio=1&size=34553&status=done&style=none&taskId=u55798d37-f653-41b4-abd1-e2491264cb2&width=657.5)
当 “+”操作中出现字符串时,这个 “+”是字符串连接符,否则是算术运算符。
0x02:赋值运算符
符号 | 作用 | 说明 |
---|---|---|
= | 赋值 | a = 10 ,将10赋值给a |
+= | 加后赋值 | a += b 将 a + b 的值给a |
-= | 减后赋值 | a -= b 将 a - b 的值给a |
*= | 乘后赋值 | a = b 将 a b 的值给a |
/= | 除后赋值 | a /= b 将 a / b 的值给a |
%= | 取余后赋值 | a %= b 将 a % b 的值给a |
0x03:自增自减运算符
符号 | 作用 | 说明 |
---|---|---|
++ | 自增 | 变量的值加 1 |
— | 自减 | 变量的值减 1 |
注意事项:
- ++ 和 — 既可以放在变量的后边,也可以放在变量的前边。
- 单独使用的时候,++ 和 — 无论是在变量的前边还是后边,结果是一样的。
- 参与操作的时候,如果放在变量的后边,先拿变量参与操作,后拿变量做 ++ 或者 —。
- 参与操作的时候,如果放在变量的前边,先拿变量做 ++ 或者 —,后拿变量参与操作。
0x04:关系运算符
符号 | 说明 |
---|---|
== | a == b,判断 a 和b 的值是否相等,成立为 true , 不成立为 false |
!= | a != b,判断 a 和b 的值是否不相等,成立为 true , 不成立为 false |
> | a > b,判断 a 是否大于 b,成立为 true , 不成立为 false |
>= | a > = b,判断 a 是否大于等于 b,成立为 true , 不成立为 false |
< | a < b,判断 a 是否小于 b,成立为 true , 不成立为 false |
<= | a < =b,判断 a 是否小于等于 b,成立为 true , 不成立为 false |
0x05: 逻辑运算符
(1)基本逻辑运算符
在数学中,一个数据 x , 大于 3,小于6,我们可以这样来进行表示:3
x>3&&x<6
逻辑运算符使用来链接关系表达式的运算符,也可以直接连接布尔类型的变量或者常量。
符号 | 作用 | 说明 |
---|---|---|
& | 逻辑与 | a&b,a和b都是true ,结果为true,否则是false |
| | 逻辑或 | a|b,a和b都是fasle ,结果为false,否则是true |
^ | 逻辑异或 | a^b,a和b结果不同为true,相同为false |
! | 逻辑非 | !a,结果和a的结果正好相反 |
(2)短路逻辑运算符
符号 | 作用 | 说明 |
---|---|---|
&& | 短路与 | 作用和&相同,但是有短路效果 |
|| | 短路或 | 作用和||相同,但是有短路效果 |
注意事项:
- 逻辑与 &,无论左边真假,右边都要执行。
短路与 &&, 如果左边为真,右边要执行,如果左边为加,则右边不执行。
- 逻辑或 | ,无论左边真假,右边都要执行。
短路或 || ,如果左边为假,右边执行;如果左边为真,右边不执行。
最常用的逻辑运算符: &&、||、!
0x06:条件运算符(三元运算符 )
格式: 关系表达式 ? 表达式1:表达式2
范例:a>b?a:b
计算规则: 首先计算关系表达式的值
如果值为true,表达式1的值就是运算结果
如果值为false,表达式1的值就是运算结果