& 按位与 (0为false,1为true)
对应位同为1位1
1 & 3的结果为1
1的二进制表示为 0 0 0 0 0 0 1
3的二进制表示为 0 0 0 0 0 1 1
0 0 0 0 0 0 1
and
0 0 0 0 0 1 1
=
0 0 0 0 0 0 1
| 按位或
对应位中任意一个为1,则值为1
1 | 3的结果为3
0 0 0 0 0 0 1
or
0 0 0 0 0 1 1
=
0 0 0 0 0 1 1
^ 按位异或
和 | 类似只是对应位同为1为0
1 ^ 3的结果为 2
0 0 0 0 0 0 1
or
0 0 0 0 0 1 1
=
0 0 0 0 0 1 0
简单使用
1. 使用&运算符判断一个数的奇偶
偶数 & 1 = 0
奇数 & 1 = 1
那么0&1=0,1&1=1
2. 利用^来完成比较两个数是否相等
1 ^ 1 = 0
1 ^ 非1数 !=0
所以同一个数……同一个数等于0,否则不等于0