JAVA实现根据实体中的某个字段将list中实体进行分组

private Map> groupBillingDataByExcpBatchCode(List billingList) throws Exception{
        
        Map> resultMap = new HashMap>();
        
        try{
            for(SysUser sysUser : billingList){
                if(null != sysUser.getSzm()) {
                    if(resultMap.containsKey(sysUser.getSzm().substring(0, 1))){//map中某值已存在,将该数据存放到同一个key(key存放的是该值)的map中
                        resultMap.get(sysUser.getSzm().substring(0, 1)).add(sysUser);
                    }else{//map中不存在,新建key,用来存放数据
                        List sysUserList = new ArrayList();
                        sysUserList.add(sysUser);
                        resultMap.put(sysUser.getSzm().substring(0, 1), sysUserList);
                    }
                }
            }
        }catch(Exception e){
            throw new Exception("按照首字母对数据进行分组时出现异常", e);
        }
        return resultMap;
    }

 

你可能感兴趣的:(JAVA)