Sobes.tech
Junior

Milyen funkcionális interfésszel dolgozunk a map() módszerben?

sobes.tech MI

Válasz az MI-től

A Java streamek map() metódusában a java.util.function.Function funkcionális interfésszel dolgozunk.

// Példa a Function használatára a map() metódusban
import java.util.List;
import java.util.stream.Collectors;

List<String> words = List.of("hello", "world");

// Function<String, Integer> egy String-et Integer-re alakít
List<Integer> lengths = words.stream()
                             .map(s -> s.length()) // Lambda kifejezés implementálja a Function<String, Integer>-t
                             .collect(Collectors.toList());

// Másik módszer method reference használatával
List<Integer> lengthsMethodRef = words.stream()
                                      .map(String::length) // A method reference szintén implementálja a Function<String, Integer>-t
                                      .collect(Collectors.toList());

Az Function<T, R> interfész egy T típusú argumentumot fogad és egy R típusú eredményt ad vissza. A map() kontextusában, T a bemeneti stream elemeinek típusa, R pedig a kimeneti stream elemeinek típusa.