"&"是"与运算"的意思,1&1=1,其他情况(1&0,0&1,0&0)都=0.
从逻辑的角度来讲,这个命令就是取x的最左边一位.例如x是0011,x&1得到0001,如果x是0110,x&1得到0000.
x&1是判断x是奇数还是偶数,如果x是奇数那么x&1的值就是true,如果x是偶数那么x&1的值就是false这是因为&是将两者的二进制进行比较,如果是两者在某位都是1,那就是真,反之为假。
所以x&1的如果要为真,则x的二进制的2的0次方位一定要为1,所以要是奇数就是真,否则为假。