Neste exercício, você deverá criar uma aplicação em Java que utilize interfaces funcionais e Streams, aplicando uma maior variedade de tipos. Siga as instruções detalhadas abaixo:
Defina cinco funções baseadas nas interfaces funcionais do Java:
Crie uma lista de strings contendo os elementos: ["laranja", "banana", "abacaxi", "uva", "kiwi", "melancia", "acerola", "morango", "ameixa", "jabuticaba", "umbu-cajá"]
.
Obtenha um Stream
a partir da lista de strings e armazene-o em uma variável.
Aplique as seguintes operações no stream, utilizando as funções criadas:
filter
) por meio do predicado, mantendo apenas aquelas com comprimento maior ou igual a 8.filter
) usando o predicado, mantendo apenas aquelas em que o primeiro e o último caracteres são diferentes.map
) pelo operador unário, que as converte para maiúsculas e adiciona um ponto de exclamação no final.filter
) usando o predicado, mantendo apenas aquelas em que a primeira letra é uma vogal.forEach
).