我知道groupingBy
返回Map<K,List<V>>
。但是,如果我知道每个键都有一个唯一的值,该如何获得一个值为V
而不是List<V>
的Map?
例如:
Map<String, Transaction> transactions =
transactions.stream().collect(groupingBy(Transaction::getID));
ID是唯一的。
答案 0 :(得分:4)
使用Collectors.toMap:
Map<String, Transaction> transactions = transactions.stream()
.collect(Collectors.toMap(Transaction::getID, Function.identity()));