Junior
Met welke functionele interface werken we in de methode map()?
sobes.tech AI
Antwoord van AI
In de map()-methode van Java-streams werken we met de functionele interface java.util.function.Function.
// Voorbeeld van gebruik van Function in de map()-methode
import java.util.List;
import java.util.stream.Collectors;
List<String> words = List.of("hello", "world");
// Function<String, Integer> zet een String om in een Integer
List<Integer> lengths = words.stream()
.map(s -> s.length()) // Lambda-uitdrukking implementeert Function<String, Integer>
.collect(Collectors.toList());
// Andere manier met methodereferentie
List<Integer> lengthsMethodRef = words.stream()
.map(String::length) // Methodereferentie implementeert ook Function<String, Integer>
.collect(Collectors.toList());
Het Function<T, R>-interface accepteert één argument van type T en geeft een resultaat van type R terug. In de context van map(), is T het type van de elementen van de invoerstroom, en R het type van de elementen van de uitvoerstroom.