【发布时间】:2018-12-10 14:12:39
【问题描述】:
我有一个这样的请求类:
public class Request
{
String name,destName;
int nSeats;
//Example : requestOne,Paris,3
...
}
我想将请求分组到一个 Map |Integer,List of String|其中键是具有相同 destName 的请求的总和,值是目标名称。
这是我的代码:
public TreeMap<Integer, List<String>> destinationsPerNSeats() {
return requests.
stream().
collect(Collectors.groupingBy(Request::getnSeats, TreeMap::new,
Collectors.mapping(Request::getDestName, Collectors.toList()))).
}
输入:
TreeMap<Integer, List<String>> map = mgr.destinationsPerNSeats();
print(map);
输出:{4=[Paris], 3=[London, Berlin, Berlin], 2=[Paris]}
预期输出:{6=[Berlin, Paris], 3=[London]}
我该如何解决这个问题?谢谢!
【问题讨论】:
-
你用什么作为输入?
-
输入是什么?
标签: dictionary java-8 java-stream treemap collectors