Expressões Lambda em Java
Uma discussão sobre Java Lambda é apresentada na tentativa de satisfazer a curiosidade do leitor por conhecimento.
Expressões Java Lambda
Em termos de Java Lambda , o Java 8 introduziu Expressões Lambda .
Expressões Java Lambda são pequenos blocos de código que usam parâmetros e retornam valores. Ao contrário dos métodos, as expressões lambda não requerem um nome e podem ser incluídas no corpo de um método.
Sintaxe
Em sua forma mais simples, as expressões lambda têm um parâmetro e uma expressão:
parameter -> expression
Você pode usar mais de um parâmetro envolvendo -os entre parênteses:
(parameter1, parameter2) -> expression
Há um limite para expressões. Além de retornar um valor imediatamente, eles não podem conter variáveis , atribuições ou instruções if ou loop for .
Os blocos de código podem ser colocados entre chaves {} para realizar operações mais complexas. O bloco de código deve incluir uma instrução de retorno se a expressão lambda retornar um valor.
(parameter1, parameter2) -> { code block }
Exemplos de Expressões Lambda
Quando se trata de Java Lambda , as expressões lambda são passadas principalmente como parâmetros:
Use uma expressão Lambda no método forEach() do LinkedList para imprimir 5 números primos da lista:
Example:
Da mesma forma, para examinar o uso do Lambda, siga o exemplo abaixo:
Example:
Se o tipo da variável for uma interface com apenas um método, nelas podem ser armazenadas expressões lambda.
Deve haver o mesmo número de parâmetros e tipo de retorno para a expressão lambda que para o método.
Em Java , muitos desses tipos de interface são integrados, como a interface Consumer no pacote java.util .
Você pode armazenar expressões lambda em variáveis usando a interface de consumidor do Java :
Example:
Outra Abordagem:
Example:
É necessário ter um parâmetro com uma interface de método único como seu tipo para que uma expressão lambda funcione em um método. A expressão lambda será executada se você chamar o método da interface.
Faça um método que aceite uma expressão lambda como parâmetro:
Example:
Example:2