Map和Json不能说的秘密---如何根据Map的key相同把对应的value值一一对应起来

**

最近项目中遇到一个小问题 : 如何根据Map的key相同把对应的value值一一对应起来。

**

想要把两个map变成如下的Json模样

String jsonArry =[{"moduleType":"25","value":"乔巴","oldValue":"","colId":"143675"},{"moduleType":"25","value":"【虚店】网聚宝女鞋1店","oldValue":"","colId":"143673"},{"moduleType":"25","value":"今晚打老虎","oldValue":"","colId":"143674"}]
 		Map<String,String> juyi= new HashMap<>();
        juyi.put("dianpuName","143673");
        juyi.put("taskTitle","143674");
        juyi.put("author","143675");

        Map<String,Object> banniu= new HashMap<>();
        banniu.put("dianpuName","【虚店】女鞋1店");
        banniu.put("taskTitle","今晚打老虎");
        banniu.put("author", "乔巴");

        StringBuilder contents = new StringBuilder("[") ;
        //遍历juyi Map。是为了去一一匹配banniu Map 中对应的值
        Iterator<Map.Entry<String, String>> it = juyi.entrySet().iterator();
        while (it.hasNext()) {
            Map.Entry<String, String> entry = it.next();
            System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
            //判断banniu中是否有相同的key
            if(banniu.containsKey(entry.getKey())){
                //转换成taskAppService.createTask服务所需要的Map
                contents.append(String.format("{\"moduleType\":\"%s\",\"value\":\"%s\",\"oldValue\":\"%s\",\"colId\":\"%s\"}","25",banniu.get(entry.getKey()),"",entry.getValue()));
                contents.append(",");
            }
        }
        contents.deleteCharAt(contents.length()-1);//删除最后一个无用逗号。
        contents.append("]");
        System.out.println(contents);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值