一、赋值运算符
- =
用于给变量赋值,将右边的值赋给左边的变量
ex: age = 24;
赋值运算符的优先级较低
二、算术运算符
用于参数之间的计算
- + , - : 加减运算
- * , / : 乘除运算
- % : 取余运算
- ++ , -- : 自增、自减运算
- 如果 ++ / -- 在变量的前面,就先进行 +1 / -1,再参与运算
- 如果 ++ / -- 在变量的后边,就先参与运算,再进行 +1 / -1
ex:int number = 10;
number = number++ + --number - ++number;
//结果: number = 9
解:
number值变化:
① 初值:10
② number++:10+1=11
③ --number:11-1=10
④ ++number:10+1=11
number = number++ + --number - ++number;
①:10 ③:10 ④:11
+,-,*,/,% 都是一元运算,++,-- 都是二元运算
三、复合运算符
是对算术运算符的缩写形式,使得对变量的改变更为简洁
- a += b <=> a = a + b
- a -= b <=> a = a - b
- a *= b <=> a = a * b
- a /= b <=> a = a / b
- a %= b <=> a = a % b
四、关系运算符
- > , < , >= , <= , == , !=
描述大小关系,结果是 bool 类型
五、逻辑运算符
& , | , && , || , !
逻辑运算是 bool 与 bool 之间的运算
描述前后表达式之间的逻辑关系,结果是 bool 类型
- &:与运算
true & true : true
false & false : false
false & true : false
一假则假
- | : 或运算
true | true : true
false | false : false
true | false: true
一真则真
- ! : 非运算
! true : false
!false: true
- && : 短路与运算
&: 无论第一个条件是真是假,都会继续判断第二个条件
&&: 如果判断第一个条件已经是假,则不会判断第二个条件
- ||: 短路非运算
|;无论第一个条件是真是假,都会继续判断第二个条件
||:如果判断第一个条件已经是真,则不会继续判断第二个条件
&& 和 || 的优缺点:
优点:第一个条件已经得知整个逻辑运算的结果,就不会去判断第二个条件了,节约了运算量
缺点:如果判断中有运算,如果不进行第二个条件的判断,那第二个条件中的运算也不能执行
六、三目运算符
- 关系运算 / 逻辑运算 ? 结果a : 结果b
例: a > b ? a : b
若a > b,结果为 a,否则结果为 b