zoukankan      html  css  js  c++  java
  • Map键值对取值, key是在"|"转义, value是在::取值

    Lambda

    1. 技术点

      • Map键值对取值, key是在"|"转义, value是在::取值
    2. 实体类

    package com.jd.saas.rd.data.proxy.api.domain.huijin.request;
    
    import lombok.Data;
    
    import java.io.Serializable;
    import java.util.List;
    
    /**
     * @Author xxx
     * @Date 2021-03-15 15:07
     * @Description: 汇金-商品信息变更
     **/
    @Data
    public class ShopInfoNoticeReq implements Serializable {
        /**
         * serialVersionUID
         */
        private static final long serialVersionUID = -9064068204587469116L;
        /**
         * itemBase 商品主档,
         * stock 库存,
         * item 门店商品,
         * price 价格,
         * category 分类,
         * store_category 门店个性分类,
         * shop 店铺的更新,
         */
        private String type;
    
        private List<ShopInfoNoticeItem> idList;
    
        private String v;
    
        private String format;
    
        private String sign;
    
        private String timestamp;
    }
    
    

    1. 测试类
    package com.jd.saas.rd.data.proxy.web;
    
    import com.alibaba.fastjson.JSON;
    import com.jd.saas.rd.data.proxy.api.domain.huijin.request.ShopInfoNoticeItem;
    import com.jd.saas.rd.data.proxy.api.domain.huijin.request.ShopInfoNoticeReq;
    
    import java.util.Map;
    import java.util.stream.Collectors;
    
    public class Test02 {
        public static void main(String[] args) {
    
            String str = "{"v": "v3","format": "json","sign": "e70a8e2a359544afa942e6918b6bdle6","idList": [{"ids": "6914973606753|1108375","storeCode": "1101"}],"type": "price","timestamp": 1616574994683}";
    
            ShopInfoNoticeReq parseObject = JSON.parseObject(str, ShopInfoNoticeReq.class);
    
            Map<String, String> storeMap = parseObject.getIdList().stream().collect(Collectors.toMap(shopInfoNoticeItem -> {
                String[] res = shopInfoNoticeItem.getIds().split("\|");
                return res[1];
            }, ShopInfoNoticeItem::getStoreCode));
    
            storeMap.forEach((k, v) -> System.out.println("{key=" + k + ", value=" + v + "}"));
            //TODO 输出:{key=1108375, value=1101}
    
        }
    }
    
  • 相关阅读:
    Tom&Jerry_team——测试总结
    OMCP sprint 第7天
    OMCP sprint 第6天
    OMCP sprint 第5天
    OMCP sprint 第4天
    OMCP sprint 第3天
    OMCP sprint 第2天
    SQL SERVER 如何恢复bak备份文件
    Ext JS
    Linnx环境下常用命令
  • 原文地址:https://www.cnblogs.com/Twittery/p/14699609.html
Copyright © 2011-2022 走看看