Monday, December 8, 2025
HomeLanguagesJavaQuick ways to check for Prime and find next Prime in Java

Quick ways to check for Prime and find next Prime in Java

Many programming contest problems are somehow related Prime Numbers. Either we are required to check Prime Numbers, or we are asked to perform certain functions for all prime number between 1 to N. Example: Calculate the sum of all prime numbers between 1 and 1000000. Java provides two function under java.math.BigInteger to deal with Prime Numbers.

  • isProbablePrime(int certainty): A method in BigInteger class to check if a given number is prime. For certainty = 1, it return true if BigInteger is prime and false if BigInteger is composite. Below is Java program to demonstrate above function. 

Java




// A Java program to check if a number is prime using
// inbuilt function
import java.util.*;
import java.math.*;
 
public class CheckPrimeTest
{
    //Function to check and return prime numbers
    static boolean checkPrime(long n)
    {
        // Converting long to BigInteger
        BigInteger b = new BigInteger(String.valueOf(n));
 
        return b.isProbablePrime(1);
    }
 
    // Driver method
    public static void main (String[] args)
                         throws java.lang.Exception
    {
       long n = 13;
       System.out.println(checkPrime(n));
    }
}


Output

true

Time Complexity: O(1).

The time complexity of this algorithm is O(1), since the BigInteger.isProbablePrime() method takes constant time to check the primality of a number.

Space Complexity: O(1).

The space complexity of this algorithm is also O(1). We only use a single variable to store the number, which is constant space.

  • nextProbablePrime() : Another method present in BigInteger class. This functions returns the next Prime Number greater than current BigInteger. Below is Java program to demonstrate above function. 

Java




// Java program to find prime number greater than a
// given number using built in method
import java.util.*;
import java.math.*;
 
class NextPrimeTest
{
    // Function to get nextPrimeNumber
    static long nextPrime(long n)
    {
        BigInteger b = new BigInteger(String.valueOf(n));
        return Long.parseLong(b.nextProbablePrime().toString());
    }
 
    // Driver method
    public static void main (String[] args)
                    throws java.lang.Exception
    {
        long n = 14;
        System.out.println(nextPrime(n));
    }
}


Output

17

Time complexity: O(1)
Space complexity: O(1)

  This article is contributed by Ayush Jain. If you like Lazyroar and would like to contribute, you can also write an article and mail your article to review-team@geeksforgeeks.org. See your article appearing on the Lazyroar main page and help other Geeks. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above

RELATED ARTICLES

3 COMMENTS

Most Popular

Dominic
32429 POSTS0 COMMENTS
Milvus
103 POSTS0 COMMENTS
Nango Kala
6803 POSTS0 COMMENTS
Nicole Veronica
11947 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12015 POSTS0 COMMENTS
Shaida Kate Naidoo
6936 POSTS0 COMMENTS
Ted Musemwa
7190 POSTS0 COMMENTS
Thapelo Manthata
6884 POSTS0 COMMENTS
Umr Jansen
6872 POSTS0 COMMENTS