繁体   English   中英

对哈希映射进行排序

[英]Sorting a hashmap

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

提前致谢

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM