&(与):真真为真,一假为假(一为0,则为0)(例如: 0011&0101 = 0001)
若n&1=0 ,则 n二进制 最右一位 为 0;
若n&1=1 ,则 n二进制 最右一位 为 1。
1&1=1
1&0=0
0&1=0
0&0=0
n&(n-1)
二进制数字n最右边的1变成0,其余不变
| (或):一真为真,假假为假(一为1,则为1)(例如: 0011|0101 =0111)
~~(非,只有一个符号,但是一个打印不出来):真为假,假为真(~0011 = 1100)
^(异或):不同为真,相同为假(例如: 0011|0101 =1001)
<<(左移):二进制向左移动一位,末尾补0
“>>”(右移): 二进制向右移动一位 101101 >>1 101101->10110
“>>>”(无符号右移一位):100右移一位10