將List/Map中的key轉換爲駝峯規則

/**
   * 將Map中的key由下劃線轉換爲駝峯
   *
   * @param map
   * @return
   */
  public static Map<String, Object> formatHumpName(Map<String, Object> map) {
    Map<String, Object> newMap = new HashMap<String, Object>();
    Iterator<Map.Entry<String, Object>> it = map.entrySet().iterator();
    while (it.hasNext()) {
      Map.Entry<String, Object> entry = it.next();
      String key = entry.getKey();
      String newKey = toFormatCol(key);
      newMap.put(newKey, entry.getValue());
    }
    return newMap;
  }

  public static String toFormatCol(String colName) {
    StringBuilder sb = new StringBuilder();
    String[] str = colName.toLowerCase().split("_");
    int i = 0;
    for (String s : str) {
      if (s.length() == 1) {
        s = s.toUpperCase();
      }
      i++;
      if (i == 1) {
        sb.append(s);
        continue;
      }
      if (s.length() > 0) {
        sb.append(s.substring(0, 1).toUpperCase());
        sb.append(s.substring(1));
      }
    }
    return sb.toString();
  }

  /**
   * 將List中map的key值命名方式格式化爲駝峯
   *
   * @param
   * @return
   */
  public static List<Map<String, Object>> formatHumpNameForList(List<Map<String, Object>> list) {
    List<Map<String, Object>> newList = new ArrayList<Map<String, Object>>();
    for (Map<String, Object> o : list) {
      newList.add(formatHumpName(o));
    }
    return newList;
  }
發佈了32 篇原創文章 · 獲贊 39 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章