/** * 给参数排序,根据参数的名称而不是根据参数值,以便生成一致的加密源字符串 * * @param params 参数 * @return String */ private static String sort(Map<String, String[]> params) { if (params == null || params.size() < 1) { return ""; } List<String> keys = new ArrayList<>(params.keySet()); Collections.sort(keys); int size = keys.size(); StringBuilder prestr = new StringBuilder(); for (int i = 0; i < size; i++) { String key = keys.get(i); String[] values = params.get(key); Arrays.sort(values); //拼接时,不包括最后一个&字符 if (i == size - 1) { prestr.append(key).append("=").append(values[0]); } else { prestr.append(key).append("=").append(values[0]).append("&"); } } return prestr.toString(); }
hashMap按照键排序转化成String
猜你喜欢
转载自blog.csdn.net/YINZONGCHAO/article/details/107203689
今日推荐
周排行