Guava – LongMath.isPowerOfTwo方法与实例

来源:这里教程网 时间:2026-02-17 21:41:36 作者:

Guava – LongMath.isPowerOfTwo方法与实例

Guava的LongMath类的isPowerOfTwo(long x)方法是用来检查一个数字是否是2的幂。它接受要检查的数字作为参数,并根据该数字是否为2的幂,返回布尔值true或false。

语法:

public static boolean isPowerOfTwo(long x)

参数: 该方法接受一个长类型的参数x,该参数将被检查为2的幂。

返回值: 该方法返回一个布尔值。如果x代表2的幂,则返回 true ,如果x不代表2的幂,则返回 false

异常: 该方法不抛出任何异常。

注意: 这与Long.bitCount(x) == 1不同,因为Long.bitCount(Long.MIN_VALUE) == 1,但Long.MIN_VALUE不是2的幂。

示例 1 :

// Java code to show implementation of// isPowerOfTwo(long x) method of Guava's// LongMath class  import java.math.RoundingMode;import com.google.common.math.LongMath;  class GFG {      // Driver code    public static void main(String args[])    {        long n1 = 52;          // Using isPowerOfTwo(long x) method        // of Guava's LongMath class        if (LongMath.isPowerOfTwo(n1))            System.out.println(n1                               + " is power of 2");        else            System.out.println(n1                               + " is not power of 2");          long n2 = 4;          // Using isPowerOfTwo(long x) method        // of Guava's LongMath class        if (LongMath.isPowerOfTwo(n2))            System.out.println(n2                               + " is power of 2");        else            System.out.println(n2                               + " is not power of 2");    }}

输出:

52 is not power of 24 is power of 2

示例2:

// Java code to show implementation of// isPowerOfTwo(long x) method of Guava's// LongMath class  import java.math.RoundingMode;import com.google.common.math.LongMath;  class GFG {      // Driver code    public static void main(String args[])    {        long n1 = 256;          // Using isPowerOfTwo(long x) method        // of Guava's LongMath class        if (LongMath.isPowerOfTwo(n1))            System.out.println(n1                               + " is power of 2");        else            System.out.println(n1                               + " is not power of 2");          long n2 = 4096;          // Using isPowerOfTwo(long x) method        // of Guava's LongMath class        if (LongMath.isPowerOfTwo(n2))            System.out.println(n2                               + " is power of 2");        else            System.out.println(n2                               + " is not power of 2");    }}

输出:

256 is power of 24096 is power of 2

参考: https://google.github.io/guava/releases/20.0/api/docs/com/google/common/math/LongMath.html#isPowerOfTwo-long-

相关推荐