求n是否为pow(2, x),由于the power of two刚好进位,所以只有最高位是1,和它的n-1的二进制刚好错开。n大于0
n
n-1
... 10000 ... 01111 & --------------- = 0
public boolean isPowerOfTwo(int n) { return n > 0 && (n & (n - 1)) == 0; }