Java API streams collects streams in the map, where value is TreeSet
•
Java
There is a student class with name, last name, age and getter
Given a student object stream
How to call a collect method to return a map with a key of student's age and a value of TreeSet, which contains the last names of students of this age
I want to use collectors Tomap(), but it's stuck
I thought I could do this and pass the third parameter to the tomap method:
stream().collect(Collectors.toMap(Student::getAge,Student::getSurname,new TreeSet<String>()))`.
Solution
students.stream()
students.stream()
.collect(Collectors.groupingBy(
Student::getAge,Collectors.mapping(
Student::getSurname,Collectors.toCollection(TreeSet::new))
))
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码
