Certamente! Em Java, você pode usar expressões lambda para definir interfaces funcionais, como Predicate, que faz parte do pacote java.util.function. Aqui está um exemplo de uma expressão lambda que consome um Predicate:
import java.util.function.Predicate;
public class ExemploLambda {
public static void main(String[] args) {
// Expressão lambda como um Predicate
Predicate<Integer> isEven = (numero) -> numero % 2 == 0;
// Usando o Predicate em um exemplo simples
System.out.println("O número 4 é par? " + isEven.test(4)); // Saída: true
System.out.println("O número 7 é par? " + isEven.test(7)); // Saída: false
}
}
Neste exemplo:
Predicate<Integer>é uma interface funcional que recebe umIntegercomo entrada e retorna um booleano.(numero) -> numero % 2 == 0é uma expressão lambda que representa um predicado que verifica se um número dado é par.
Você pode usar esse predicado em vários contextos onde precisa testar condições em números inteiros. O método test da interface Predicate avalia o predicado para um determinado argumento.
Sinta-se à vontade para modificar a expressão lambda e o predicado para se adequarem ao seu caso de uso específico. Expressões lambda em Java oferecem uma maneira concisa de expressar interfaces funcionais com métodos abstratos únicos (tipos SAM) e são comumente usadas com a API de Streams do Java ou em outros contextos de programação funcional.