Java中的HashMap加入元素时,是否可以根据自己定义的顺序加入元素得到自己期望的顺序?

Java中的HashMap加入元素时,是否可以根据自己定义的顺序加入元素得到自己期望的顺序?,第1张

首先HashMap是无序的,想要有序可以用TreeMap,加入元素后自行排序,但是Map是键值对,它就算排序也是按key排序的,和元素没关系,如果你期望的是元素的排序,建议使用TreeSet,建立TreeSet的时候指定一个comparator.

如果确定可以使用TreeSet你可以追问,如果不用,HashMap不能排序这是你要的答案

hashmap是无序的,没有办法进行排序。所以要想排序就要换数据结构,可以考虑用TreeMap,先把hashmap内容复制到TreeMap,然后定义规则进行排序。参考:

Map hashMap = new HashMap()

Map treeMap = new TreeMap(new Comparator() {

    @Override

    public int compare(Object o1, Object o2) {

//这里定义你的排序规则

return 0

    }

})

treeMap .putAll(hashMap)


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11649631.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存