Interview Questions

Java Prime Number

This code sample contains methods to generate Prime numbers in a given range using Java.

import java.util.ArrayList;
import java.util.List;

public class PrimeNumber
{
        public static void main(String[] args)
        {
                PrimeNumber pN = new PrimeNumber();
                System.out.println("Is 73 a prime number -> " + pN.isPrime(73));
                System.out.println("List of prime numbers up to 200 -> " + pN.getListOfPrimes(200));
        }

        public boolean isPrime(int n)
        {
        int k = (int) Math.sqrt(n);
                for (int i = 2; i <= k; i++)
                {
                        if (n % i == 0)
                                return false;
                }
                return true;
        }

        public List<Integer> getListOfPrimes(int end)
        {
                List<Integer> lstInt = new ArrayList<Integer>();

                lstInt.add(1);
                lstInt.add(2);
                boolean flag = true;

                for (int i = 3; i < end; i++)
                {
                        flag = true;
                        int sqI = (int)Math.sqrt(i);
                        for (int j = 1; j < lstInt.size(); j++)
                        {
                                if (i % lstInt.get(j) == 0)
                                {
                                        flag = false;
                                        break;
                                }

                                if (sqI < lstInt.get(j))
                                {
                                        break;
                                }
                        }
                        if (flag == true)
                        {
                                lstInt.add(i);
                        }
                }
                return lstInt;
        }
}