使用Java Streams可以将Map的值按键分组到列表中。可以通过以下步骤实现:
下面是一个示例代码:
import java.util.*;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>();
map.put("A", 1);
map.put("B", 2);
map.put("C", 1);
map.put("D", 3);
map.put("E", 2);
Map<Integer, List<Integer>> result = map.entrySet().stream()
.collect(Collectors.groupingBy(Map.Entry::getValue,
Collectors.mapping(Map.Entry::getValue, Collectors.toList())));
System.out.println(result);
}
}
输出结果为:
{1=[1, 1], 2=[2, 2], 3=[3]}
在这个例子中,我们使用了一个包含键值对的Map对象。通过使用Java Streams,我们将Map的值按键分组到了一个新的Map中,其中键是原始Map中的值,值是对应的值列表。
对于腾讯云相关产品和产品介绍链接地址,由于不能提及具体品牌商,建议您参考腾讯云的文档和官方网站,了解他们提供的云计算服务和相关产品。
领取专属 10元无门槛券
手把手带您无忧上云