java中的二进制运算
总结java中的二进制运算
一、与(&)
- 两个都为1得1,与且类似
- 1&1=1;1&0=0;0&1=0;0&0=0
注意特殊用法:
- 与0相与 可清零
- 与1相与 可保留原值。例如从0101 0100中取后四位,0101 0100 & 0000 1111 = 0000 0100
二、或(|)
- 有一个1则得1,即是或条件
- 1|1=1;1|0=1;0|1=1;0|0=0
注意特殊用法:
- 与0或,可保留原值
- 将对应位置 置1,例如将0101 0100 后四位置1,0101 0100 | 0000 1111 = 0101 1111
三、异或(^)
- 同0,异1。即相同为0不同为1
- 1 ^ 1=0;1 ^ 0=1;0 ^ 1=1;0 ^ 0=0
注意特殊用法:
- 将指定位置翻转,例如将0101 0100 后四位翻转,0101 0100 ^ 0000 1111= 0101 0100
- 与0相异或,可保留原值