Flask接口签名sign原理与实例代码浅析
230
2023-01-25
java 判断一个数是否为2的整数次幂方法
当不考虑负数时,对于此题分析可知,当输入值小于1时,此数肯定不是2的整数次幂。
当输入值大wcvTdTkiPJ于一时,我们可以发现一个规律。2的整数次幂用二进制表示为:
2d = 10b; 4d = 100b; 8d = 1000b
二进制首位为一,其余各位均为零。
所以我们可以通过判断输入值转换为二进制时首位为一,其余各位为0,这样就能保证输入值为2的整数次幂。
但是这样做又过于繁琐,我们可以只判断二进制数中最后一次出现“1"的位置,使用String,lastIndexOf();方法即可。
而且我们还可以发现此规律同样适用于输入1的情况。
那么简洁的代码就这样产生了。
public static boolean isPowerOfTwwcvTdTkiPJo(int n) {
String str = Integer.toBinaryString(n);
if(n < 1)
return false;
else if(str.lastIndexOf("1") == 0)
return true;
else
return false;
}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~