Aprender como usar lambda em Java é essencial para quem quer escrever códigos mais concisos e legíveis. As expressões lambda foram introduzidas no Java 8 e representam um grande passo rumo à programação funcional na linguagem. Neste guia, você aprenderá como aplicar esse recurso com clareza e praticidade.
O que são expressões lambda em Java?
Antes de entender como usar lambda em Java, é importante saber o que são essas expressões. Lambdas permitem criar funções anônimas — ou seja, sem nome — que podem ser atribuídas a variáveis, passadas como parâmetros ou retornadas de métodos.
Sua principal aplicação ocorre em interfaces funcionais, aquelas que possuem apenas um método abstrato.
Exemplo básico de lambda:
(int a, int b) -> a + b
Essa expressão representa uma função que recebe dois inteiros e retorna a soma deles.
Como usar lambda em Java com interfaces funcionais
Para usar lambda, você precisa de uma interface funcional. Veja o exemplo abaixo:
@FunctionalInterface
interface Operacao {
int executar(int x, int y);
}
Agora veja como usar lambda em Java com essa interface:
Operacao soma = (a, b) -> a + b;
System.out.println(soma.executar(5, 3)); // Saída: 8
Esse código cria uma função lambda que realiza a soma de dois números. A implementação é simples, direta e evita a criação de classes anônimas desnecessárias.
Exemplos práticos com APIs do Java
As lambdas são especialmente úteis com as APIs do Java, como a Stream API:
List<String> nomes = Arrays.asList("Ana", "Bruno", "Carlos");
nomes.stream()
.filter(nome -> nome.startsWith("A"))
.forEach(System.out::println);
Aqui, usamos uma lambda para filtrar nomes que começam com “A” e, em seguida, imprimir esses nomes. Isso torna o código muito mais legível.
Quando usar expressões lambda?
Você pode usar lambdas sempre que precisar passar comportamento como argumento, como em callbacks, processamento de coleções e lógica de eventos.
No artigo O que é interface funcional em Java, explicamos o papel essencial das interfaces funcionais nesse contexto.
Boas práticas com lambdas
1. Clareza é mais importante que concisão
Evite exagerar na simplificação. Se uma lambda começa a parecer confusa, prefira extrair o comportamento para um método com nome.
2. Aproveite os tipos inferidos
Você pode omitir os tipos de parâmetros se o compilador puder inferi-los:
Operacao multiplicacao = (a, b) -> a * b;
3. Use referências de método quando possível
List<String> nomes = Arrays.asList("João", "Maria", "José");
nomes.forEach(System.out::println);
Conclusão
Agora que você sabe como usar lambda em Java, é hora de aplicar esse recurso em seus projetos para deixar seu código mais limpo e funcional. Com o uso correto, lambdas tornam seu desenvolvimento mais eficiente e moderno.
Para mais detalhes, consulte a documentação oficial da Oracle sobre expressões lambda.
Deixe um comentário