一、位逻辑运算符
& //与
| //或
~ //取反
^ //异或(可以理解为是否相等)
1.1、位逻辑运算结果
| A | B | A&B | A|B | A^B | ~A |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 | 1 |
| 1 | 0 | 0 | 1 | 1 | 0 |
| 0 | 1 | 0 | 1 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 | 0 |
1.2、位逻辑运算的逻辑结果
| A | B | A&B | A|B | A^B |
|---|---|---|---|---|
| true | true | true | true | false |
| true | false | false | true | true |
| false | true | false | true | true |
| false | false | false | false | false |
1.3、实际中的运算
- 与运算:十进制12和8进行与运算。

- 或运算:十进制4和8进行或运算。

- 异或运算:十进制31和22进行异或运算。

- 取反运算:十进制123进行取反运算。

二、位移运算符
<< //左移位
>> //右移位
>>> //无符号右移位
注意:移位运算中,当左侧操作数是int类型时,右侧操作数以32位取模。当左侧操作数是long类型时,右侧操作符以64位取模。关于取模,参考博客。
2.1、左移

2.2、右移
-
正数右移

-
负数右移

-
无符号右移

1410

被折叠的 条评论
为什么被折叠?



