欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

java代码判断数字是否是2的n次方,java次方,在一些软件场景中我们需要

来源: javaer 分享于  点击 14195 次 点评:119

java代码判断数字是否是2的n次方,java次方,在一些软件场景中我们需要


在一些软件场景中我们需要数字必须是2的n次方, java的Integer类提供了numberOfLeadingZeros可以帮我们判断一个数字是否是2的n次方。

如下代码片段:

    static boolean is2nPower(int x) {        int bitLeft = Integer.numberOfLeadingZeros(x);        int bitLength = 31 - bitLeft;        int shouldBe = 1 << bitLength;        return (shouldBe == x);    }

此方法的性能很好, 判断所有正整数的时间为2s左右。

相关栏目:

用户点评