1 &:只要两边有一边为假,那么结果就为假,只有2边都为真时才为真
2: |:只要2边有一个为真就为真,只有2边都为假结果才为假
3: ^异或:既两边不一样时才为真,反之则为假:一个数异或同一个数结果还是那个数
注意的是 &和|无论2边的结果如何都要执行
&&和||与&和|的区别在于短路,既只要前一个条件可以判断整个结果的真与假,那么后面的语句就不执行;还有就是&和|,^可以参与运算;0视为假,1视为真
其次 位运算符的几个常见性质:<<左移和右移>>
<<:其实就是乘以2的移动的位数次幂
>>:就是除以2的移动的位数次幂(补上最高位子的数;如果最高位是0,右移后拿0不空位,如果是1则补
上1);>>>最高位拿零补(无论最高位是什么都拿0补上)
~:取反 正数取其相反数为取反后加一;负数取相反数则为先减一再取反; 值得注意的是这个“~”是取反并不是取相反数,不可混淆;
|