Java >> Java tutorial >  >> Tag >> return

Filtrer kort og returliste over nøgler

Collectors.toList() tager ikke noget argument, du skal map det først:

eligibleStudents = studentMap.entrySet().stream()
    .filter(a -> a.getValue().getAge() > 20)
    .map(Map.Entry::getKey)
    .collect(Collectors.toList());

toList() samleren opretter bare en beholder for at akkumulere elementer og tager ingen argumenter. Du skal lave en kortlægning, før den indsamles. Sådan ser det ud.

List<String> eligibleStudents = studentMap.entrySet().stream()
    .filter(a -> a.getValue().getAge() > 20)
    .map(Map.Entry::getKey)
    .collect(Collectors.toList());

Java tag