簡體   English   中英

如何按字母順序對HashMap條目進行排序?

[英]How to sort HashMap entries in alphabetic order?

我制作了一個程序,它將從用戶讀取文本,然后顯示用戶文本的字母頻率。 我正在嘗試使用哈希映射,我不確定如何按字母順序顯示結果。

我目前有:

Map<Character, Integer> map = new HashMap<Character, Integer>();    
for (int i = 0; i < user.length(); i++) {
  Integer count = map.get(user.charAt(i)); // if not in map
  if (count == null)
    map.put(user.charAt(i), 1);
  else
    map.put(user.charAt(i), count + 1);
}

作為我存儲值的代碼,但是當我打印結果時

System.out.println(map.entrySet());

我得到[a=1, r=2, h=1, y=1] (用於打印“哈利”)

您正在尋找的是一個實現SortedMap界面的集合。 嘗試使用TreeMap ,它保證了鍵的自然順序。

這個問題描述了Map各種實現之間的差異HashMap,LinkedHashMap和TreeMap之間的區別

使用TreeMap而不是HashMap

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM