(==为判断 =为赋值)
逻辑运算符
&&(且)
当&&两边都为真的时候结果才为真否则为假
运行该代码是不会出现错误的,当左边为假的时候,右边就不会再执行了。
||(或)
当两侧有一个为真的时候结果就为真。同样当左侧为真的时候,右侧就不会在执行了。
!(非)
如果表达式为真的话!真则为假
位运算
- &(按位与)
- |(按位或)
- ^(按位异或)
- ~(按位取反)
位操作符操作的对象都是二进制中的补码。
&(按位与)
有0则为0
例如:15的二进制为1111,20的二进制为10100
15&20
01111
10100
00100
|(按位或)
有1则为1
例如:15的二进制为1111,20的二进制为10100
15|20
01111
10100
111111
^(按位异或)
相同为0,相异为1
例如:15的二进制为1111,20的二进制为10100
15^20
01111
10100
11011
~(按位取反)
例如:15的二进制为1111
!15
11111
00000
位移操作符
<<二进制左移操作符
例如:15<<1 00001111向左移动1位=00011110 //15<<1->15*2^1;(右侧补0)
>>二进制右移操作符
例如 15>>1 00001111向右移动1位=00000111 //15>>1->15/2^1;(左侧补充相同的符号位)