Java 位运算符的使用规则
Java中位运算符有&、|、^、~、<<、>>……它们是基于二进制的运算符
下面我总结了位运算的使用规则
一、&(与)
使用规则:仅当同一位置上的操作数(1或0)都为1,输出结果才为1,否则为0;
例如:14 & 5 就相当于
10的二进制 : 0000 1110
5的二进制:0000 0101
与运算后:0000 0100<——>4
二、|(或)
使用规则:仅当同一位置上的操作数(1或0)都为0,输出结果才为0,否则为1;
例如:14 | 5 就相当于
10的二进制 : 0000 1110
5的二进制:0000 0101
与运算后:0000 1111<——>15
三、^(异或)
使用规则:仅当同一位置上的操作数(1或0)不同,输出结果才为1,否则为0;
例如:14 ^ 5 就相当于
10的二进制 : 0000 1110
5的二进制:0000 0101
异或运算后: 0000 1011<——>11
四、a << b(左移)
使用规则:a的二进制形式向左移b位
例如:2<<2 =8
说明:左移等价于原数乘以2的b次幂
五、a >> b(右移)
使用规则:a的二进制形式向右移b位
例如:2>>2 =0.5
说明:右移等价于原数除以2的b次幂