code: public static void treeCopyTo(String prefix, Map<String, String> sourceMap,
                                    Map<String, String> dstMap, boolean remove) {
          Iterator<Map.Entry<String, String>> it = sourceMap.entrySet().iterator();
          while (it.hasNext()) {
              Map.Entry<String, String> entry = it.next();
              if (entry.getKey().startsWith(prefix)) {
                  dstMap.put(entry.getKey().substring(prefix.length()), entry.getValue());
                  if (remove) {
                      it.remove();
                  }
              }
          }
      }
docs: 树状恢复
  @param prefix 前缀
  @param sourceMap  原始map
  @param dstMap 目标map
  @param remove 命中遍历后是否删除