算术运算符、自增自减运算符
•算术运算符与算术表达式
§(1)加减运算符:+、-。例如:2+39, 908.98-23 等。
§(2)乘、除和取余运算符:*、/。例如:2*39,908.98/23 等。
•自增、自减运算符: ++、--,分前缀后缀,一般不在表达式内部使用自增自减。注意点如下:
§前缀:表示先进行加1运算。
§后缀:在表达式中先使用变量原来的值,然后再加1。
•算术混合运算精度从“低”到“高”的排列顺序是:byte、short、int、long、float、double
关系运算符
•关系运算符的结果为boolean类型,即返回关系表达式的真或假
运算符 | 优先级 | 用法(表达式) | 含义 | 结合方向 |
> |
6 | op1 > op2 | 大于 |
从 左 到 右 |
< | op1 < op2 | 小于 | ||
>= | op1 >= op2 | 大于等于 | ||
<= | op1 <= op2 | 小于等于 | ||
== |
7 | op1 == op2 | 等于 | |
!= | op1 != op2 | 不等于 |
位运算
-
位运算是讲数据先转化为二进制数,再逐位(bit)按规则计算
-
“按位与”运算符“&”,规则:全1则1,否则为0
-
“按位或”运算符“|”,规则:全0则0,否则为1
-
“按位非”运算符“~”,规则:遇1则0,遇0则1
-
“按位异或”运算符“^”,规则:相同为0,不同为1
异或加密算法
-
异或算法是可逆的,如果对某个数据a进行两次相同的异或运算,则结果会还原为a
逻辑运算符
运算符 | 用法 | 含义 | 结合方向 |
&& | op1&&op2 | 逻辑与 | 左到右 |
|| | op1||op2 | 逻辑或 | 左到右 |
! | !op | 逻辑非 | 右到左 |
逻辑运算与位运算区别
•逻辑运算符(&&、||)与位运算符(&、|)的区别:
1. 逻辑运算符只能针对boolean类型进行逻辑运算,而位运算还可以对数值进行逻辑运算。
2. 逻辑运算符有短路情况,即前面的表达式可以得到最终结果时,后面的表达式将不被执行。
移位运算符
>> 右移运算符:将二进制数据进行右移运算。
<< 左移运算符:将二进制数据进行左移运算。
>>> 无符号右移运算符:无论正负,都在高位插入0。
三目条件运算符
•三目条件运算符是一个逻辑判断与赋值运算符的组合。语法如下:
<逻辑表达式> ? <表达式1> : <表达式2>
•当逻辑表达式为真时,表达式1有效;当逻辑表达式为假时,表达式2有效。
if条件语句 及 if-else分支语句
if ( <布尔表达式> ) {
满足布尔表达式时需要执行的代码;
}
if ( <布尔表达式> ) {
满足布尔表达式时需要执行的代码;
} else {
不满足布尔表达式时需要执行的代码;
}
if ( <布尔表达式1> ) {
满足布尔表达式1时需要执行的语句体;
} else if ( <布尔表达式2> ) {
不满足布尔表达式1,但满足表达式2时需要执行的语句体;
} else {
不满足布尔表达式1,也不满足表达式2时需要执行的语句体;
}