Aqui temos um exemplo de como implementar a verificação de números primos em Java:
public class Exemplo {
public static void main(String[] args) {
// laço para imprimir 1000 números primos
for (int numero = 0, primos = 0; primos < 1000; numero++) {
if (Primes.isPrime(numero)) {
primos++;
System.out.println(primos + ": " + numero);
}
}
}
}
Classe utilitária Primes utilizada no exemplo:
/**
* Classe utilitária para verificação de números primos.
*
* @author Ricardo Artur Staroski
*/
public final class Primes {
/**
* Verifica se o número informado é primo
*
* @param number O número a ser verificado
*
* @return <tt>true</tt> se o número informado for primo e <tt>false</tt> caso contrário
*/
public static boolean isPrime(long number) {
number = Math.abs(number);
// se o número é par, não pode ser primo
if (number % 2 == 0) {
return false;
}
// verificar se este número ímpar é primo
for (long i = 3; i * i <= number; i += 2) {
if (number % i == 0) {
return false;
}
}
return true;
}
// não faz sentido instanciar esta classe
private Primes() {}
}