我很抱歉发布这个不清楚的问题。这是我第一次使用 hashmap,因此我很困惑。试图在这里以更好的方式解释这个问题 -将 hashmap 的键值存储在 string[] 中 https://stackoverflow.com/questions/7415366/store-key-values-of-hashmap-in-string
我有一个基于值排序的哈希图。我想从排序映射中提取键并将它们存储在 String[] 数组中。键的顺序(按值排序)很重要。
我使用此代码对值的哈希图进行排序 -http://www.xinotes.org/notes/note/306/ http://www.xinotes.org/notes/note/306/
为了提取密钥数组,我尝试了
String[] keys = (String[])( hm.keySet().toArray( new String[hm.size()] ) )
(这里hm是hashmap)
但这个方法并没有奏效。键 string[] 有键,但不符合我想要的排序顺序。
更新:
我使用 linkedHashMap 并能够将排序后的键值存储在数组中。Here http://www.lampos.net/sort-hashmap是代码的链接。
根据拼写错误以及您正在使用哈希图的说明,键检索的顺序将与插入顺序不一致。为此,请使用 LinkedHashMap。这是使用您进行外部排序,然后将排序的条目插入到映射中。
如果您希望在将条目插入 Map 时对其进行排序,请使用 TreeMap。您可以使用自定义比较器或让您的关键对象实现 Comparable 接口。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)