位运算符包含四种'&' ,' ~' , '| ', '^'。 位运算是将数据先转换为二进制补码形式,在逐渐按位计算。其中 "~"为“按位非”运算符,规则:遇1则0,遇0则1。 "&"为“按位与”运算符,规则:全1则1,否则为0。 "^"为“按位异或”运算符,规则:相同为0,不同为1。 "|"为“按位或”运算符,规则:全0则0,否则为1。如:
计算 3|6=x 3 0011 6 | 0110 x 0111=7 所以3|6=7。 注意: 按位异或运算是可逆的,即如果对某个数据a进行两次相同的异或运算,则结果会还原为a,如对数值3进行两次和5的异或运算: 3 ^ 5 = 6; 6 ^ 5 = 3;逻辑运算符有三种 '&&' ,逻辑与 '||' , 逻辑或 '!',逻辑非 运算规则如下:
总结二者区别 1)逻辑运算符只能针对Boolean类型进行计算,但是位运算是可以对数值进行逻辑运算的。 2)逻辑运算符存在短路现象,即前面的表达式判断成功时,后面的表达式不会执行。