首页 > 其他 > 详细

编程习惯

时间:2018-12-14 18:50:16      阅读:167      评论:0      收藏:0      [点我收藏+]

List<Entity>转为Map<keyField, valueField>

将一个List实体集合转换为以Entity某一个字段分类的Map

    /**
     * List转换为Map<key字段,val字段/实体>
     */
    public Map<String,Object> getMapByList(List list){
        Map<String,Object> resultMap= new HashMap<String,Object>();  //结果,字段/值的映射map

        if (CollectionUtil.isNotEmpty(list)){   //先判断list是否为空
            for (Entity entity:list){     //遍历List
                String keyField= entity.getFieldName();   //
                Object valueField = entity.getFieldValue();   //值,值也可以为其他字段或者整个对象
/********遍历list的key字段不能直接放入Map中,因为可能有重复的*********/ if (resultMap.containsKey(keyField)){ //如果key字段的值是有重复的 valueField = resultMap.get(keyField) + StringUtil.SEPARATOR + valueField; //value字段的值为: 旧的数据<-->新的数据作为value }
/**********处理可能重复key的情况结束************/ resultMap.put(keyField,valueField); //最后在将处理后的keyField和valueField放入到Map中去 } }
return resultMap; }

 

编程习惯

原文:https://www.cnblogs.com/aeolian/p/10120635.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!