java list<对象>根据某个字段分组

前言

仅供学习参考,不保证性能问题
其中的实体类改成你自己的实体类

代码

    /**
     * 根据某个字段进行分组,分组后遍历方法
     * <p>
     * Map<String, List<MyDomain>> stringListMap = handleGroup(tmpList);
     * Set<String> keySet = stringListMap.keySet();
     * for (String key : keySet) {
     * List<MyDomain> myDomains = stringListMap.get(key);
     * }
     *
     * @param list
     * @return
     * @throws Exception
     * @author DaenMax
     */
    public static Map<String, List<PhcpSubmitContract>> handleGroup(List<PhcpSubmitContract> list) throws Exception {
        Map<String, List<PhcpSubmitContract>> resultMap = new HashMap<>();
        try {
            for (PhcpSubmitContract obj : list) {
                //分组依据key
                String key = obj.getPlatNo();
                if (resultMap.containsKey(key)) {
                    resultMap.get(key).add(obj);
                } else {
                    List<PhcpSubmitContract> tmpList = new ArrayList<>();
                    tmpList.add(obj);
                    resultMap.put(key, tmpList);
                }
            }
        } catch (Exception e) {
            throw new Exception("分组时出现异常", e);
        }
        return resultMap;
    }

本文作者:DaenMax

本文链接:https://www.cnblogs.com/daen/p/17089543.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   DaenMax  阅读(897)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起