[英]get a list of unique date from the stream grouping
我有数据:
id|date
1 |12-12-2021
2 |12-12-2021
3 |13-12-2021
想要获取日期列表:["12-12-2021", "13-12-2021"]
使用 stream,我可以得到 map:
txs.stream().collect(Collectors.groupingBy(g -> g.getDate()));
我想从上面的 stream 转换为列表。
groupingBy
不是您的最佳选择。 改用distinct
。 它将自动过滤掉所有重复项。
txs.stream().map(g -> g.getDate()).distinct().collect(Collectors.toList());
如果您在Map<Integer,LocalDate>
中有数据,则可以使用values()
并收集到Set
以消除重复项
Set<LocalDate> dates = txs.values().stream().collect(Collectors.toSet())
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.