www.qcfz.net > jAvA mAp,怎么保证顺序

jAvA mAp,怎么保证顺序

LinkedHashMap是有序的

map只是一个接口,他的实现类中 HashMap是无序的(只是说不是你插入时的顺序); LinkedHashMap是有序的(按你插入的顺序); TreeMap 是按key排序的; HashMap 类基本上等同于 Hashtable, 区别仅仅在于: HashMap 不是同步的,并且运行 null 值.。

hashmap是没有顺序的,有顺序的一般没人这么用的,都是通过list来进行确定顺序的对象添加的。因为list是有顺序的,先add的编号就小(从0开始),举例: List list = new linkedList(); list.add("0"); list.add("1"); 结果就是:list.get(1) =1;

因为这是hashmap,存放的时候,是会根据key的hash值来决定这个key要放在哪里的,所以顺序不一样

通过map中的LinkedHashMap实现就可以。 HashMap headers = new LinkedHashMap();//创建一个map headers.put("Cache-Control", "no-cache");//给map赋第一个值 headers.put("Connection", "close");//给map赋第二个值 Set keys1 = headers.keySet.

java.util.TreeMap 放入其中的value,自动按key进行排序, 默认的排序规则按ascii码排序,如果是key是英文和数字不会有问题,如果中文则会出现问题,需要自己写排序规则。 比较器需要实现java.text.Collator类,例如: package cn.tjopen.mediam...

看map的种类吧,例如hashmap是按key的hash码排序的,而treemap是利用comparator 进行key的自然排序的

额。。我记得早上我回答过了呀。。 HashMap输出的无序的,因为哈希算法存值和取值的时候没有顺序性。 想做到先进先出,之类的顺序。要用 LinkedHashMap 或TreeMap

Map是随机存储的,好像是按内存块的大小放数据。这样存储效率高。但检索效率低。List是会重新划分存储空间,保证连续存储,存的效率低,检索效率高。大概是这个意思,具体的,准确、详细的自己google下

网站地图

All rights reserved Powered by www.qcfz.net

copyright ©right 2010-2021。
www.qcfz.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com