DEV Community

Fundamentos das expressões lambda

Elementos de Sintaxe

Operador Lambda (->)

Divide a expressão lambda em duas partes:

Lado esquerdo: Lista de parâmetros.

Lado direito: Corpo lambda (ações ou retorno).

  • Tipos de Corpo Lambda:

Única expressão: Retorna diretamente o resultado de uma expressão.

Bloco de código: Contém múltiplas instruções.

Exemplos de Expressões Lambda:

1) Sem parâmetros:

Exemplo: () -> 98.6

  • Lista de parâmetros vazia.

  • Retorna um valor constante 98.6 (tipo inferido como double).

  • Equivalente ao método:
    double myMeth() {
    return 98.6;
    }

Exemplo: () -> Math.random() * 100

  • Retorna um número pseudoaleatório multiplicado por 100.

2) Com parâmetros:

Exemplo: (n) -> 1.0 / n

  • Retorna o recíproco de n.

  • Tipo de parâmetro geralmente inferido, mas pode ser declarado explicitamente.

3) Retorno de valores booleanos:

Exemplo: (n) -> (n % 2) == 0

  • Retorna true se n for par, false caso contrário.

  • Forma simplificada (sem parênteses no parâmetro):
    n -> (n % 2) == 0.

Considerações

  • O tipo de retorno de uma expressão lambda é inferido automaticamente.

  • Os parênteses nos parâmetros são opcionais para expressões lambda com um único parâmetro.

  • O livro sugere usar parênteses por coerência no estilo.

Resumo Geral

  • A expressão lambda simplifica a criação de métodos anônimos.

  • Flexível em termos de parâmetros e tipos de retorno.

  • Adota uma sintaxe concisa para melhorar a legibilidade e a expressividade do código.

Top comments (0)