这个问题在这里已经有答案了:
如何强制max返回java流中的所有最大值(7个答案)
上个月关门了。
是否有可能(甚至可行)将这两个流操作合并到一个单通道解决方案中?
int max = locations.stream()
.map(location -> location.getAvailableScooters().size())
.max(Comparator.naturalOrder())
.orElse(-1);
return locations.stream()
.filter(location -> location.getAvailableScooters().size() == max)
.collect(Collectors.toSet());
1条答案
按热度按时间sulc1iza1#
我认为合并的唯一方式是这样的:
这是一个更糟糕的解决方案
max和collect都是终端操作,因此无法合并