Sobes.tech
Junior

O que são expressões lambda em Java?

sobes.tech IA

Resposta da IA

A expressão lambda em Java é uma função anónima que permite passar blocos de código como objetos. É uma forma compacta de implementar interfaces funcionais (interfaces com um único método abstrato).

Sintaxe da expressão lambda:

  • Lista de parâmetros (pode estar vazia).
  • Operador ->.
  • Corpo da expressão (pode ser uma expressão ou um bloco de instruções).

Exemplos:

// Lambda para a interface funcional Runnable
Runnable tarefa = () -> System.out.println("Olá do lambda!");

// Lambda para a interface funcional Comparator<Integer>
Comparator<Integer> comparador = (a, b) -> a.compareTo(b);

// Lambda com corpo de bloco de instruções
Consumer<String> cumprimentar = nome -> {
    String mensagem = "Olá, " + nome + "!";
    System.out.println(mensagem);
};

Características principais:

  • Anónima: não têm nome.
  • Interfaces funcionais: usadas para implementar interfaces funcionais.
  • Concisa: permitem escrever código mais compacto em comparação com classes anónimas.
  • Captura de variáveis: podem capturar variáveis locais efetivamente finais do contexto circundante.

O uso de expressões lambda melhora a legibilidade do código e simplifica o trabalho com APIs orientadas à programação funcional, por exemplo, com a API Stream.