如何使Hashmap有序?

时间:2017-12-13 07:03:02

标签: java

除了使用LinkeHashmap外,我能获得一个有序键的Hashmap吗?

        Map<String,String> myMapTmp = XXDao().getXXX();
        Map<String,String> myMap = new LinkedHashMap<String,String>();

        List<String> keyList = new ArrayList<String>();
        Iterator<String> it =myMapTmp.keySet().iterator();
        while(it.hasNext()){
            keyList.add(it.next());
        }
        Collections.sort(keyList);
        Iterator<String> it2 = keyList.iterator();
        while(it2.hasNext()){
            String key = it2.next();
            myMap.put(key, myMapTmp.get(key));
        } 

3 个答案:

答案 0 :(得分:2)

您可以 File "<stdin>", line 14 pops = zip(df_pop_ceb[['Total Population']],df_pop_ceb[['Urban population (% of total)']]) ^ SyntaxError: invalid syntax 使用TreeMap

的映射
HashMap

答案 1 :(得分:1)

您可以从现有地图创建一个treeMap,以便treeMap将所有条目排序。

TreeMap<Integer, String> treeMap = new TreeMap<Integer, String>();
treeMap.putAll(myMapTmp);

答案 2 :(得分:-1)

只需使用LinkedHashMap即可。它会给你想要的结果。