1<< i 就是左移 i 位,得到的是2的 i 次方
例如 1<<2
00000001 ------> 00000100 ------>2的2次方 = 4
i &(1<< j )就是将左移 j 位的1与 i 进行按位与
例如 5 & (1<<2)
5 转换为二进制数是 0101
1<<2 得到的是 0100
将 0101 与 0100 进行按位与
0 1 0 1
| | | | --> 0&0=0 , 1&1=1 , 0&0=0 , 1&0 = 0
0 1 0 0 得到的数就是0100 = 4 ≠ 0