Lets say I have a class
public class FootBallTeam {
private String name; // team name
private String league;
//getters, setters, etc.
}
I'm trying to group Teams names according to their League.
For example:
League A -> [nameOfTeam2, nameOfTeam5]
League B -> [nameOfTeam1, nameOfTeam3, nameOfTeam4]
With below code I am getting Map<String, List<FootBallTeam>> which is pointing to list of team objects List<FootBallTeam>.
Map<String, List<FootBallTeam>> teamsGroupedByLeague = list
.stream()
.collect(Collectors.groupingBy(FootBallTeam::getLeague));
Instead I just want the names of FootBallTeams i.e. FootBallTeam.name.
In other words Map<String, List<String>> where List<String> holds teams names .
How to achieve that?