zoukankan      html  css  js  c++  java
  • 传入list或map进行首字母大小写转换

    /**
         * 首字母小写
         * author:wp
         */
        public static Object keyFirstToLower(Object obj) throws Exception {
            if(obj != null){
                if(obj instanceof List){
                    List<Map<String,Object>> list = (List<Map<String, Object>>) obj;
                    List<Map<String,Object>> listRes = new ArrayList<Map<String,Object>>();
                    if(list != null && list.size() > 0){
                        for (Map<String, Object> map : list) {
                            listRes.add(toLower(map));
                        }
                        return listRes;
                    }
                }else if(obj instanceof Map){
                    Map<String,Object> result = new HashMap<String,Object>();
                    Map<String,Object> map = (Map<String, Object>) obj;
                    if(map!= null && !map.isEmpty()){
                        result = toLower(map);
                        return result;
                    }
                }
            }
                return null;
        }
        
        private static Map<String,Object> toLower(Map<String, Object> map) {
            Map<String,Object> result = new HashMap<String,Object>();
            try {
                if(map != null && !map.isEmpty()){
                    Iterator<Map.Entry<String, Object>> iterator = map.entrySet().iterator();
                    while(iterator.hasNext()) {
                        Map.Entry<String, Object> entry = iterator.next();
                        String key = entry.getKey();
                        Object value = entry.getValue();
                        String firstChar = String.valueOf(key.charAt(0));
                        key = key.replaceFirst(firstChar, firstChar.toLowerCase());
                        result.put(key, String.valueOf(entry.getValue()));
                        if(value instanceof List){
                            List<Map<String,Object>> list = (List<Map<String, Object>>) value;
                            List<Map<String,Object>> listRes = new ArrayList<Map<String,Object>>();
                            if(list != null && list.size() > 0){
                                for (Map<String, Object> map2 : list) {
                                    Map<String,Object> mapres = (Map<String, Object>) keyFirstToLower(map2);
                                    listRes.add(mapres);
                                }
                                result.put(key, listRes);
                            }
                        }
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            logger.info("=========result"+result.toString());
            return result;
        }

  • 相关阅读:
    [转]c++访问python3-实例化类的方法
    【转】利用Boost.Python将C++代码封装为Python模块
    [转]Linux下Python与C++混合编程
    [转]Windows下使用VS2015编译openssl库
    [转]boost::python开发环境搭建
    [转]linux下编译boost.python
    [转]阿里巴巴十年Java架构师分享,会了这个知识点的人都去BAT了
    [转]Python3《机器学习实战》学习笔记(一):k-近邻算法(史诗级干货长文)
    [转]马上2018年了,该不该下定决心转型AI呢
    [转]PostgreSQL命令行使用手册
  • 原文地址:https://www.cnblogs.com/lirenzhujiu/p/9799174.html
Copyright © 2011-2022 走看看