Skip to content
Related Articles

Related Articles

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

Improve Article
Save Article
  • Difficulty Level : Basic
  • Last Updated : 04 Dec, 2018
Improve Article
Save Article

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

Reference:https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#probablePrime(int, %20java.util.Random)

My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!