位运算

&操作符

VariableA & VariableB

当VariableA的某位值与VariableB的值相同时保留,否则舍弃

e.g. 0000011 & 0000010 = 0000010 = 2(10)

|操作符

VariableA | VariableB

当VariableA的某位值等于一或VariableB的值等于一是保留一

e.g. 0001010 | 0000101 = 0001111 = 15(10)

<<操作符

VariableA << VariableB

每一位向左移VariableB位<10进制先隐式转换成2进制>

e.g. 00100000 << 1= 01000000

对一个数使用<<1时等价于*=2

>>操作符

VariableA >> VariableB

每一位向右移VariableB位

e.g. 00100000 >>1= 00010000

对一个数使用>>1时等价于/=2

^操作符

VariableA ^ VariableB

两个相同的数会变成0,反之是1

e.g. 00011000 ^ 00010000 = 00001000