Related Articles

# Java Guava | binomial(int n, int k) of LongMath Class with Examples

• Last Updated : 28 Jan, 2019

The binomial(int n, int k) method of Guava’s LongMath Class accepts two parameters n and k and calculate the value of the binomial coefficient . If the calculated value overflows the maximum value of a long, then the method returns Long.MAX_VALUE i.e, the maximum value of a long.

Syntax :

```public static long binomial(int n, int k)
```

Parameters: This method accepts two parameters n and k and calculate the value of the binomial coefficient .

Return Value : The method returns the binomial coefficient of n and k.

Exceptions : The method binomial(int n, int k) throws IllegalArgumentException if n is negative, or k is negative or k is greater than n.

Below examples illustrate the binomial() method of LongMath class:

Example 1 :

 `// Java code to show implementation of``// binomial(int n, int k) 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` `n = ``4``;``        ``int` `k = ``3``;`` ` `        ``// Using binomial(int n, int k) method of``        ``// Guava's LongMath class``        ``long` `ans = LongMath.binomial(n, k);`` ` `        ``System.out.println(``"Binomial Coefficient of "``                           ``+ n + ``" and "` `+ k``                           ``+ ``" is : "` `+ ans);`` ` `        ``int` `n1 = ``20``;``        ``int` `k1 = ``4``;`` ` `        ``// Using binomial(int n, int k) method of``        ``// Guava's LongMath class``        ``long` `ans1 = LongMath.binomial(n1, k1);`` ` `        ``System.out.println(``"Binomial Coefficient of "``                           ``+ n1 + ``" and "` `+ k1``                           ``+ ``" is : "` `+ ans1);``    ``}``}`
Output:
```Binomial Coefficient of 4 and 3 is : 4
Binomial Coefficient of 20 and 4 is : 4845
```

Example 2 :

 `// Java code to show implementation of``// binomial(int n, int k) method of Guava's``// LongMath class`` ` `import` `java.math.RoundingMode;``import` `com.google.common.math.LongMath;`` ` `class` `GFG {`` ` `    ``static` `long` `findBinomial(``int` `n, ``int` `k)``    ``{``        ``try` `{``            ``// Using binomial(int n, int k)``            ``// method of Guava's LongMath class``            ``// This should throw "IllegalArgumentException"``            ``// as k < 0``            ``long` `ans = LongMath.binomial(n, k);`` ` `            ``// 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``;``        ``int` `k = ``7``;`` ` `        ``try` `{``            ``// Function calling``            ``findBinomial(n, k);``        ``}``        ``catch` `(Exception e) {``            ``System.out.println(e);``        ``}``    ``}``}`
Output:
```java.lang.IllegalArgumentException: k (7) > n (5)
```

Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

My Personal Notes arrow_drop_up