对哈希映射进行排序

baw*_*awa 3 java sorting hashmap treeset

我需要根据键对哈希映射进行排序.键是一个字符串(所以我需要按字母顺序排序),值是一个整数.我试图在网上搜索,发现树集一旦你把它自动排序.有人可以指导我如何将其转换为树集,或者即使我可以使用哈希映射对其进行排序.

提前致谢

Tho*_*mas 6

由于散列图根据定义是未排序的映射,因此您需要使用另一个容器.根据您的需求,有几种选择,一些是:

  1. 暂时使用TreeMap而不是HashMap替代.除非您必须保留hashmap,否则这将是最佳选择.
  2. 使用a TreeSet对键进行排序,然后遍历键并从中提取值HashMap.
  3. 与选项2中的操作相同,但LinkedHashMap在迭代期间填充新内容.这将导致映射以插入顺序返回值,这是由于使用有序集而恰好是排序顺序.请注意,向元素添加元素LinkedHashMap会将任何新元素附加到末尾 - LinkedHashMap仍然按插入顺序排序.