我已经开始使用Java 8流。
以下内容返回Map<Long, TradeFileInstance>
Map<Long, List<TradeFileInstance>> configInstanceMap = new HashMap<Long, List<TradeFileInstance>>();
List<TradeFileInstance> tradeFileInstances = tradeFileInstanceRepository.findAll();
configInstanceMap = tradeFileInstances.stream().collect(Collectors.groupingBy(tradeFileInstance ->
tradeFileInstance.getTradeFileConfig().getId()));
return configInstanceMap;
但是我需要返回Map<TradeFileConfig, List<TradeFileInstance>>
在以上代码中,我们可以通过tradeFileInstance.getTradeFileConfig()
获取TradeFileCongig对象
答案 0 :(得分:1)
tradeFileInstances.stream()
.collect(Collectors.groupingBy(TradeFileInstance::getTradeFileConfig));
假设TradeFileConfig
覆盖equals/hashCode