示例1给定一个整数,写一个函数来判断它是否是 4 的幂次方。如果是,返回 true ;否则,返回 false 。
整数 n 是 4 的幂次方需满足:存在整数 x 使得 n == 4x
输入:n = 16 输出:true示例2
输入:n = 5 输出:false示例3
输入:n = 1 输出:true提示
- -231 <= n <= 231 - 1
public boolean isPowerOfFour(int n) {
if (n == 1 || n == 4)
return true;
if (n < 4)
return false;
int a = (n - 1) & n; // 判定是否是2的幂
if (a == 0){
if (Math.sqrt(n) % 4 == 0) // 是2的幂,4^x 开方是 2^x
return true;
else
return false;
}
else
return false;
}



