 Open in App
Not now

# Java.math.BigInteger.probablePrime() method in Java

• Difficulty Level : Basic
• Last Updated : 04 Dec, 2018

Prerequisite : BigInteger Basics

The probablePrime() method will return a Biginteger of bitLength bits which is prime. bitLength is provided as parameter to method probablePrime() and method will return a prime BigInteger of bitLength bits. The probability that a BigInteger returned by this method is composite and does not exceed 2^-100.

Syntax:

`public static BigInteger probablePrime(int bitLength, Random rnd)`

Parameters: This method accepts two parameters as shown in the above syntax and described below.

• bitLength – bitLength of the returned BigInteger.
• rnd – source of random bits used to select candidates to be tested for primality.

Return Value: This method returns a BigInteger of bitLength bits that is probably prime.

Exception:

• ArithmeticException – if bitLength < 2.

Below program illustrate the probablePrime() method:

 `import` `java.math.*;``import` `java.util.Random;``import` `java.util.Scanner;`` ` `public` `class` `GFG {`` ` `    ``public` `static` `void` `main(String[] args)``    ``{`` ` `        ``Scanner sc = ``new` `Scanner(System.in);`` ` `        ``// create a BigInteger object``        ``BigInteger biginteger;`` ` `        ``// create a integer value for bitLength``        ``int` `length = ``4``;`` ` `        ``// create a random object``        ``Random random = ``new` `Random();`` ` `        ``// call probablePrime method to find next probable prime``        ``// whose bit length is equal to bitLength provided as parameter.``        ``biginteger = BigInteger.probablePrime(length, random);`` ` `        ``String result = ``"ProbablePrime whose bit length is "``                        ``+ length + ``" = "` `+ biginteger;`` ` `        ``// print result value``        ``System.out.println(result);``    ``}``}`

Output:

```ProbablePrime whose bit length is 4 = 13
```
My Personal Notes arrow_drop_up