Map 集合按字母排序方法


@Test
public void testMapSort() {
Map<String, String> map = new HashMap<>();
map.put("bdc", "bbb");
map.put("caf", "ccc");
map.put("aef", "aaa");
map.put("def", "ddd");
System.out.println("排序前:" + map);

//進行排序
List<Map.Entry<String, String>> entries = new ArrayList<Map.Entry<String, String>>(map.entrySet());
Collections.sort(entries, new Comparator<Map.Entry<String, String>>() {
@Override
public int compare(Map.Entry<String, String> o1, Map.Entry<String, String> o2) {
return o1.getKey().compareTo(o2.getKey());
}
});
System.out.println("排序后:" + entries);

//將key,value拼接
StringBuffer sb = new StringBuffer();
entries.forEach(x -> sb.append(x.getKey()).append(x.getValue()));
System.out.println("拼接后結果:" + sb.toString());
}
控制台輸出結果:

排序前:{bdc=bbb, aef=aaa, def=ddd, caf=ccc}

排序后:[aef=aaa, bdc=bbb, caf=ccc, def=ddd]

拼接后結果:aefaaabdcbbbcafcccdefddd


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM