[请教] Java 往Map里面放遍历的List

实现的是往Map里面存放List数组,已Product的id为分组
Key为id, value为 List<Product>


我自己写的一个借口怎么也实现不了, 问题在哪里我明白,就是相同的key,value会被覆盖.。想了半天,也没想出来,只能请假一下大佬 。怎么保证实体类product存入list,又不会被覆盖
@Override public Map<String,List<Product>> selectProduct(){
        List<Product> productList = productMapper.selectProduct();
        Map<String,List<Product>>  productMap = new HashMap<>();
        for (Product product : productList) {
            List<Product> newList = new ArrayList<>();
            newList.add(product);
            productMap.put(product.getId(),newList);
        }
        return productMap;
    }


#笔试题目##Java#
全部评论
循环的时候不需要每次都新建list,我按你的需求理解的是,先判断map里面存在要放的id没,不存在就新建一个放进去,如果存在就拿到id的对应的value值(list),把product加到这个list里面
点赞 回复 分享
发布于 2020-06-23 23:38
先判断containsKey&nbsp;如果有这个key了&nbsp;get这个value&nbsp;然后往get到的list里添product&nbsp;否则new&nbsp;List
点赞 回复 分享
发布于 2020-06-23 23:35

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务