docs: public String buildSignString(Map<String, String> params, String wrapChar) {
          List<String> keys = new ArrayList<>(params.keySet());
          Collections.sort(keys);
  
          StringBuilder payString = new StringBuilder();
          for (int i = 0; i < keys.size(); i++) {
              String key = keys.get(i);
              String value = params.get(key);
              if (i == keys.size() - 1) {
                  //拼接时，不包括最后一个&字符
                  payString.append(key).append("=").append(wrapChar).append(value).append(wrapChar);
              } else {
                  payString.append(key).append("=").append(wrapChar).append(value).append(wrapChar).append("&");
              }
          }
  
          return payString.toString();
      }