Junior
Com que interface funcional trabalhamos no método map()?
sobes.tech IA
Resposta da IA
No método map() dos streams do Java, trabalhamos com a interface funcional java.util.function.Function.
// Exemplo de uso de Function no método map()
import java.util.List;
import java.util.stream.Collectors;
List<String> words = List.of("hello", "world");
// Function<String, Integer> converte uma String em um Integer
List<Integer> lengths = words.stream()
.map(s -> s.length()) // A expressão lambda implementa Function<String, Integer>
.collect(Collectors.toList());
// Outro método usando referência de método
List<Integer> lengthsMethodRef = words.stream()
.map(String::length) // A referência de método também implementa Function<String, Integer>
.collect(Collectors.toList());
A interface Function<T, R> aceita um argumento do tipo T e retorna um resultado do tipo R. No contexto de map(), T é o tipo dos elementos do stream de entrada, e R é o tipo dos elementos do stream de saída.