当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Guava IntMath pow(int b, int k)用法及代码示例


Guava IntMath类的方法pow(int b,int k)将b返回到第k次幂。即使结果溢出,也将等于BigInteger.valueOf(b).pow(k).intValue()。此实现在O(log k)时间中运行。

用法:

public static int pow(int b, int k)

异常:如果k <0,则方法pow(int b,int k)抛出IllegalArgumentException。


范例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); 
    } 
}
输出:
4 to the 5th power is:1024
12 to the 3th power is:1728

范例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); 
        } 
    } 
}
输出:
java.lang.IllegalArgumentException:exponent (-5) must be >= 0

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



相关用法


注:本文由纯净天空筛选整理自bansal_rtk_大神的英文原创作品 Java Guava | pow(int b, int k) method of IntMath Class。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。