interface
@FunctionalInterface
interface IVerificaPrimo {
boolean ehPrimo(int numero);
}
import java.util.Scanner;
public class LambdaPrimo {
public static void main(String[] args) {
// Scanner para receber entrada do usuário
Scanner scanner = new Scanner(System.in);
// Solicitar ao usuário para inserir um número
System.out.print("Digite um número para verificar se é primo: ");
int numero = scanner.nextInt();
// Usando expressão lambda para verificar se o número é primo
VerificaPrimo verificarPrimo = num -> {
if (num <= 1) {
return false; // Números menores ou iguais a 1 não são primos
}
// Verificar divisibilidade de 2 até a raiz quadrada do número
for (int i = 2; i <= Math.sqrt(num); i++) {
if (num % i == 0) { // Se divisível por qualquer número, não é primo
return false;
}
}
return true; // Se não encontrar divisores, o número é primo
};
// Verificar e mostrar o resultado
if (verificarPrimo.ehPrimo(numero)) {
System.out.println(numero + " é primo.");
} else {
System.out.println(numero + " não é primo.");
}
}
}
A duvida é a seguinte a interface publica