位运算符使用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
>>>零填充的右位移