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


Java Longs.factorial(int n)用法及代码示例


Guava LongMath类的factorial(int n)方法返回前n个正整数的乘积,即n!。

用法:

public static long factorial(int n)

参数:该方法仅接受一个整数类型的参数n,用于查找阶乘。


返回值:此方法返回以下值:

  • 如果n为0,则此方法返回1。
  • 如果结果适合长整数,则此方法返回前n个正整数的乘积。
  • 如果结果不适合长时间,则此方法返回Long.MAX_VALUE。

异常:如果n为负数,则factorial(int n)方法将引发IllegalArgumentException。

下面的程序说明LongMath.factorial()方法的使用:

范例1:

// Java code to show implementation of 
// factorial(int n) 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[]) 
    { 
        int n1 = 10; 
  
        // Using factorial(int n) method of 
        // Guava's LongMath class 
        long ans1 = LongMath.factorial(n1); 
  
        System.out.println("factorial of "
                           + n1 + " is:"
                           + ans1); 
  
        int n2 = 12; 
  
        // Using factorial(int n) method of 
        // Guava's LongMath class 
        long ans2 = LongMath.factorial(n2); 
  
        System.out.println("factorial of "
                           + n2 + " is:"
                           + ans2); 
    } 
}
输出:
factorial of 10 is:3628800
factorial of 12 is:479001600

范例2:

// Java code to show implementation of 
// factorial(int n) method of Guava's 
// LongMath Class 
  
import java.math.RoundingMode; 
import com.google.common.math.LongMath; 
  
class GFG { 
  
    static long findFact(int n) 
    { 
        try { 
            // Using factorial(int n) method of 
            // Guava's LongMath class 
            // This should throw "IllegalArgumentException" 
            // as n < 0 
            long ans = LongMath.factorial(n); 
  
            // Return the answer 
            return ans; 
        } 
        catch (Exception e) { 
            System.out.println(e); 
            return -1; 
        } 
    } 
  
    // Driver code 
    public static void main(String args[]) 
    { 
        int n = -5; 
  
        try { 
  
            // Function calling 
            findFact(n); 
        } 
        catch (Exception e) { 
            System.out.println(e); 
        } 
    } 
}
输出:
java.lang.IllegalArgumentException:n (-5) must be >= 0

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



相关用法


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