^: 2^3 =1[
00000010
00000011]
00000001(0,1)——> 1
&: 2&3 =2 [
0000 0010
0000 0011]
00000010 (1,1)——>1
|: 2|3 =3[
00000010
00000011]
00000011 (1,1)|(0,1)——>1
~: ~1=-2 非
[00000001
11111110] 补码表示的是 :-2
<<: 2<<3 =[
00000010
00010000
]左移三位 2 * 2的三次方 =16
>>: 2>>3 =[
00000010
00000000
] 右移三位 2/(2的三次方)=0
运算符顺序:
Java编辑
运算符 | 结合性 |
---|---|
[ ] . ( ) (方法调用) | 从左向右 |
! ~ ++ -- +(一元运算) -(一元运算) | 从右向左 |
* / % | 从左向右 |
+ - | 从左向右 |
<< >> >>> | 从左向右 |
< <= > >= instanceof | 从左向右 |
== != | 从左向右 |
& | 从左向右 |
^ | 从左向右 |
| | 从左向右 |
&& | 从左向右 |
|| | 从左向右 |
?: | 从右向左 |
= += -= *= /= %= &= |= ^= <<= >>= >>=
| 从右向左 |