对键值对进行排序 C#+Java不同写法

C#有现成的sortMapByKey方法,调用一下就行:

// 引用命名空间
using System.Collections;

                Dictionary<string, string> param = new Dictionary<string, string>();
                param.Add("bbb", "bbb"); 
                param.Add("aaa", "aaa");
                // 序列化
                Dictionary<string, string> pa2 = sortMapByKey(param);

Java方法:

复制代码


import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;

   /**
     * 使用 Map按key进行排序
     * 
     * @param map
     * @return
     */
    private static Map<String, Object> sortMapByKey(Map<String, Object> map) {
        if (map == null || map.isEmpty()) {
            return null;
        }

        Map<String, Object> sortMap = new TreeMap<String, Object>(new Comparator<String>() {
            @Override
            public int compare(String str1, String str2) {
                return str1.compareTo(str2);
            }
        });

        sortMap.putAll(map);

        return sortMap;
    }
复制代码

 

Java调用:

复制代码
        Map<String, Object> param = new HashMap<String, Object>();
        param.put("bbb", "xxxx");
        param.put("cccc", "www");
        Map<String, Object> params = sortMapByKey(param); // 按Key进行排序
    
        StringBuilder builder = new StringBuilder();// 拼接成参数
        for (Entry<String, Object> entry : params.entrySet()) {
            builder.append(entry.getKey()).append("=").append(entry.getValue()).append("&");
        }
        String str = builder.substring(0, builder.length() - 1);//去掉最后一个&
复制代码

 

posted @   淘来的星湖  阅读(172)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示