判断一个数是否是2的整数次幂
public class Test { public static void main(String[] args) { System.out.println(isPow(4)); } public static boolean isPow(int number){ return (number&number-1) == 0; } }
高位都是1 低位都是0
-1后 所有位都是1 高位为0
与后为0
public class Test { public static void main(String[] args) { System.out.println(isPow(4)); } public static boolean isPow(int number){ return (number&number-1) == 0; } }
高位都是1 低位都是0
-1后 所有位都是1 高位为0
与后为0