2017-08-04 7 views
-2

zur Liste Lets sagen, ich habe ein List<Person> Gathering und ich mag eine Map<String, List<Person>>, Kartierung Person.surname zu einem List von Person: s, die die gleichen surname haben. Gibt es eine bequeme Möglichkeit, dies mit Streams zu tun?Java 8: Karte des Feldes von Elementen

Antwort

3

Ja, durch Collectors.groupingBy(...) mit:

Map<String, List<Person>> personsBySurname = gathering.stream() 
     .collect(Collectors.groupingBy(Person::get‌​Surname));