分享学习

标题: 如何使Map能够保持原始的插入顺序 [打印本页]

作者: admin    时间: 2022-6-20 16:39
标题: 如何使Map能够保持原始的插入顺序

还有一种比较复杂的方法,就是根据你具体的业务,设计一个符合结构。
比如,你的业务中插入、查询和修改较多,删除操作较少,可以把Value和Key分别放在两个容器里面,每次插入数据的时候,引入一个当前的序列号Number(序列号永远递增就能保证顺序):
QHash<Key, Number> keyHash;
QMap<Number, Value> valueMap;
这样valueMap可以保证按照插入顺序浏览,查询的时候通过keyHash找到key->Number,然后使用Number在valueMap中找到对应的值。
这样做的好处是,当列表比较大的时候,查询效率会比直接使用数组和链表更高;










欢迎光临 分享学习 (http://1314xuexi.com/) Powered by Discuz! X3.3