Capítulo 3. Interfaces Funcionais do JDK
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Muitas linguagens de programação funcional utilizam apenas um conceito singular e dinâmico de "funções" para descrever as suas lambdas, independentemente dos seus argumentos, tipo de retorno ou caso de utilização real. Java, por outro lado, é uma linguagem estritamente tipada que requer tipos tangíveis para tudo, incluindo lambdas. É por isso que o JDK fornece mais de 40 interfaces funcionais prontamente disponíveis no seu pacote java.util.function para dar início ao seu conjunto de ferramentas funcionais.
Este capítulo mostra-te as interfaces funcionais mais importantes, explica porque é que existem tantas variações e mostra como podes estender o teu próprio código para ser mais funcional.
As quatro grandes categorias de interface funcional
As mais de 40 interfaces funcionais em java.util.function dividem-se em quatro categorias principais, sendo que cada categoria representa um caso de utilização funcional essencial:
-
As funções aceitam argumentos e devolvem um resultado.
-
Os consumidores apenas aceitam argumentos mas não devolvem um resultado.
-
Os fornecedores não aceitam argumentos e apenas devolvem um resultado.
-
Os predicados aceitam argumentos para testar uma expressão e devolvem uma primitiva
booleancomo resultado.
Estas quatro categorias abrangem muitos casos de utilização e os seus nomes estão relacionados ...