我需要根据键排序哈希映射。键是一个字符串(所以我需要按字母顺序进行排序),值是一个整数。我试图在网上搜索,并发现TreeSet一旦放入就会自动排序。能否有人指导我如何将其转换为TreeSet,或者甚至只是使用哈希映射进行排序。
提前感谢。
提前感谢。
由于哈希表按定义是不排序的映射,所以您需要使用另一个容器。根据您的需求,有几个选项可供选择,其中一些是:
TreeMap
而不是HashMap
。这将是最好的选择,除非您必须保留哈希表。TreeSet
对键进行排序,然后遍历键并从HashMap
中提取值。LinkedHashMap
。这将导致映射按插入顺序返回值,因为使用了排序集。请注意,在向LinkedHashMap
添加元素时,任何新元素都将附加到末尾,因为LinkedHashMap
仍按插入顺序排序。