List<LinkedHashMap<String, String>>类型的数据转换为Map<String, List<String>>类型数据

编程入门 行业动态 更新时间:2024-10-28 00:26:37

List<LinkedHashMap<String, String>><a href=https://www.elefans.com/category/jswz/34/1771355.html style=类型的数据转换为Map<String, List<String>>类型数据"/>

List<LinkedHashMap<String, String>>类型的数据转换为Map<String, List<String>>类型数据

import java.util.*;public class Main {public static void main(String[] args) {// 示例数据:List<LinkedHashMap>List<LinkedHashMap<String, String>> keyParamList = new ArrayList<>();LinkedHashMap<String, String> map1 = new LinkedHashMap<>();map1.put("key1", "value1");map1.put("key2", "value2");keyParamList.add(map1);LinkedHashMap<String, String> map2 = new LinkedHashMap<>();map2.put("key1", "value3");map2.put("key2", "value4");keyParamList.add(map2);LinkedHashMap<String, String> map3 = new LinkedHashMap<>();map2.put("key1", "value5");map2.put("key2", "value6");keyParamList.add(map3);// 转换为Map<String, List<String>>Map<String, List<String>> resultMap = keyParamList.stream().flatMap(map -> map.entrySet().stream()).collect(Collectors.groupingBy(Map.Entry::getKey,Collectors.mapping(Map.Entry::getValue, Collectors.toList())));// 输出结果System.out.println(resultMap);//输出结果:{key1=[value1, value5], key2=[value2, value6]}}
}

在这个示例中,我们首先创建了一个List<LinkedHashMap<String, String>>类型的示例数据keyParamList。然后,我们使用Stream API对keyParamList进行流操作。通过flatMap将每个LinkedHashMap转换为流,并使用groupingBy和Collectors.mapping对键进行分组并映射值为列表。最后,我们将结果存储在Map<String, List>类型的变量resultMap中,并打印输出结果。

请注意,这段代码假设keyParamList中的每个LinkedHashMap都具有相同的键,并且将这些键作为结果的Map的键,将对应的值收集到列表中作为值。如果实际情况不同,可能需要对代码进行适当的修改以满足你的需求。

更多推荐

List<LinkedHashMap<String, String>>类型的数据转换为Map<String, List<String>>类型数据

本文发布于:2023-12-06 11:19:46,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1667449.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:类型   数据   转换为   LinkedHashMap   List

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!