Friday, February 20, 2026
HomeLanguagesJavaBigIntegerMath ceilingPowerOfTwo() function | Guava | Java

BigIntegerMath ceilingPowerOfTwo() function | Guava | Java

The ceilingPowerOfTwo(BigInteger x) method of Guava’s BigIntegerMath class returns the smallest power of two greater than or equal to x. This is equivalent to BigInteger.valueOf(2).pow(log2(x, CEILING)).

Syntax:

public static BigInteger 
    ceilingPowerOfTwo(BigInteger x)

Parameters: This method takes the number x as parameter whose ceiling power of two is to be found.

Return Value: This method returns the ceiling power of two of the given number x.

Exceptions: This method throws IllegalArgumentException if x <= 0.

Below examples illustrates the BigIntegerMath.ceilingPowerOfTwo() method:

Example 1:




// Java code to show implementation of
// ceilingPowerOfTwo(BigInteger x) method
// of Guava's BigIntegerMath class
  
import java.math.*;
import com.google.common.math.BigIntegerMath;
  
class GFG {
  
    // Driver code
    public static void main(String args[])
    {
        BigInteger n1 = BigInteger.valueOf(25);
  
        // Using ceilingPowerOfTwo(BigInteger x) method of
        // Guava's BigIntegerMath class
        BigInteger ans = BigIntegerMath.ceilingPowerOfTwo(n1);
  
        System.out.println("Smallest power of 2 greater "
                           + "than or equal to "
                           + n1 + " is: " + ans);
  
        BigInteger n2 = BigInteger.valueOf(65);
  
        // Using ceilingPowerOfTwo(BigInteger x) method of
        // Guava's BigIntegerMath class
        BigInteger ans1 = BigIntegerMath.ceilingPowerOfTwo(n2);
  
        System.out.println("Smallest power of 2 greater "
                           + "than or equal to "
                           + n2 + " is: " + ans1);
    }
}


Output:

Smallest power of 2 greater than or equal to 25 is: 32
Smallest power of 2 greater than or equal to 65 is: 128

Example 2:




// Java code to show implementation of
// ceilingPowerOfTwo(BigInteger x) method
// of Guava's BigIntegerMath class
  
import java.math.*;
import com.google.common.math.BigIntegerMath;
  
class GFG {
  
    // Driver code
    public static void main(String args[])
    {
  
        try {
  
            BigInteger n = BigInteger.valueOf(0);
  
            // Using ceilingPowerOfTwo(BigInteger x) method of
            // Guava's BigIntegerMath class
            // This should raise "IllegalArgumentException"
            // as n is <= 0
            BigInteger ans = BigIntegerMath.ceilingPowerOfTwo(n);
  
            System.out.println("Smallest power of 2 greater "
                               + "than or equal to n is : " + ans);
        }
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}


Output:

Exception: java.lang.IllegalArgumentException: x (0) must be > 0

Reference: https://google.github.io/guava/releases/21.0/api/docs/com/google/common/math/BigIntegerMath.html#ceilingPowerOfTwo-java.math.BigInteger-

Dominic
Dominichttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

2 COMMENTS

Most Popular

Dominic
32506 POSTS0 COMMENTS
Milvus
131 POSTS0 COMMENTS
Nango Kala
6882 POSTS0 COMMENTS
Nicole Veronica
12005 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12099 POSTS0 COMMENTS
Shaida Kate Naidoo
7011 POSTS0 COMMENTS
Ted Musemwa
7255 POSTS0 COMMENTS
Thapelo Manthata
6967 POSTS0 COMMENTS
Umr Jansen
6956 POSTS0 COMMENTS