位运算符使用32位有符号数

使用&判断奇偶性

&:与
作用:
1.2&1 => 10&01 => 00 => 0
2.5&6 => 101&110 => 100 => 4

利用&可以做奇偶性判断
偶数&1=0
奇数&1=1

|或运算

&:或
作用:
1.2|1 => 0010|0001 => 11 => 3
2.5|6 => 0101|0110 => 111 => 7

~非运算

负数的二进制是正数的二进制反码加一
~:非(取反)
作用:
1.~5 => ~000...000101 => 111...111010(负数) => -6
2.~7 => ~0111  => 11111000 => -8
2.~15 => ~1111  => 11110000 => -16

^

如果数位是不同的,则 XOR 返回 1


十进制	二进制
5	00000000000000000000000000000101
1	00000000000000000000000000000001
5 ^ 1	00000000000000000000000000000100 (4)

位移运算符<<迅速得出2的平方

左位移(这是零填充的左移)
2 10
2<<1 100  4

1<<2 //4
1<<3 //8
1<<4 //16
1<<5 //32
左边加上乘法
2<<2 //8
3<<2 //12

>>(保留符号右位移)

最左侧的数位被从左侧推入,最右侧的数位被移出
7 111
2>>1 11 3

>>>零填充的右位移