Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Espelho entre Function e lambdas

Exemplo de lambda: s -> System.out.println(s) Como ficaria se eu quiser colocar esse lambda dentro de uma function? Function

5 respostas

Boa tarde, João! Como vai?

Vc poderia usar esse lambda assim (supondo que nomes seja uma lista de String):

nomes.forEach( s -> System.out.println(s) );

O resultado é que todos os nomes da lista serão impressos.

Grande abraço e bons estudos.

Entendi, obrigado! Mas minha dúvida não é essa: Eu queria saber como passar isso para uma function. Exemplo: Function funcao = String::length;

solução!

Ah sim, agora entendi a sua pergunta, João!

Vc não pode fazer Function funcao = s -> System.out.println(s); pq a interface Function obriga que o lambda receba como parâmetro um tipo T e devolva como resultado um tipo diferente R, ou seja, ela faz uma transformação.

Exemplo prático:

Function<String, Integer> funcao = (String s) -> s.length();

Dessa forma, o lambda recebe uma String e devolve como saída um Integer.

Ficou claro agora?

Agora sim, agradeço o apoio! A minha dúvida é se era possível fazer isso que eu estava querendo rsrs

Mto bem, João! Qualquer coisa, se tiver alguma dúvida não hesite em procurar o fórum!

Grande abraço e bons estudos!