Open In App

Java Guava | pow(int b, int k) method of IntMath Class

Improve
Improve
Like Article
Like
Save
Share
Report

The method pow(int b, int k) of Guava’s IntMath class returns b to the kth power. Even if the result overflows, it will be equal to BigInteger.valueOf(b).pow(k).intValue(). This implementation runs in O(log k) time.

Syntax:

public static int pow(int b, int k)

Exception: The method pow(int b, int k) throws IllegalArgumentException if k < 0.

Example 1:




// Java code to show implementation of
// pow(int b, int k) method of Guava's
// IntMath class
  
import java.math.RoundingMode;
import com.google.common.math.IntMath;
  
class GFG {
  
    static int findPow(int b, int k)
    {
  
        // Using pow(int b, int k)
        // method of Guava's IntMath class
        int ans = IntMath.pow(b, k);
  
        // Return the answer
        return ans;
    }
  
    // Driver code
    public static void main(String args[])
    {
        int b = 4;
        int k = 5;
  
        int ans = findPow(b, k);
  
        System.out.println(b + " to the " + k
                           + "th power is: "
                           + ans);
  
        b = 12;
        k = 3;
  
        ans = findPow(b, k);
  
        System.out.println(b + " to the " + k
                           + "th power is: "
                           + ans);
    }
}


Output:

4 to the 5th power is: 1024
12 to the 3th power is: 1728

Example 2 :




// Java code to show implementation of
// pow(int b, int k) method of Guava's
// IntMath class
import java.math.RoundingMode;
import com.google.common.math.IntMath;
  
class GFG {
  
    static int findPow(int b, int k)
    {
  
        try {
            // Using pow(int b, int k)
            // method of Guava's IntMath class
            // This should throw "IllegalArgumentException"
            // as k < 0
            int ans = IntMath.pow(b, k);
  
            // Return the answer
            return ans;
        }
        catch (Exception e) {
            System.out.println(e);
            return -1;
        }
    }
  
    // Driver code
    public static void main(String args[])
    {
        int b = 4;
        int k = -5;
  
        try {
            // Using pow(int b, int k)
            // method of Guava's IntMath class
            // This should throw "IllegalArgumentException"
            // as k < 0
            IntMath.pow(b, k);
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}


Output:

java.lang.IllegalArgumentException: exponent (-5) must be >= 0

Reference: https://google.github.io/guava/releases/20.0/api/docs/com/google/common/math/IntMath.html#pow-int-int-



Last Updated : 21 Jan, 2019
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads