[发明专利]一种配置数据的存储方法、装置及电子设备在审
申请号: | 201910457135.3 | 申请日: | 2019-05-29 |
公开(公告)号: | CN110201393A | 公开(公告)日: | 2019-09-06 |
发明(设计)人: | 金淼 | 申请(专利权)人: | 北京金山安全软件有限公司 |
主分类号: | A63F13/56 | 分类号: | A63F13/56;A63F13/60 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 李欣;马敬 |
地址: | 100123 北京市朝*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数组对象 索引标识 配置数据 关联存储 配置文件 装置及电子设备 配置对象 存储 时间复杂度 遍历操作 直接提取 查询 组对象 加载 内存 分配 记录 | ||
本发明实施例提供了一种配置数据的存储方法、装置及电子设备,包括:获取配置文件,配置文件中记录有配置对象的配置数据,并且将配置文件加载进内存,并基于配置对象的配置数据,生成数组对象,以及为数组对象分配索引标识,以及将数组对象与索引标识,在内存中进行关联存储,由于在内存中,将数组对象和该数组对象的索引标识进行关联存储,当需要查询数组对象时,可以按照索引标识,直接提取与索引标识进行关联存储的数组对象,从而避免了遍历操作,降低了查询时的时间复杂度。
技术领域
本发明涉及数据存储技术领域,特别是涉及一种配置数据的存储方法、装置及电子设备。
背景技术
配置数据是程序正常运行时不可缺少的数据,例如,对于游戏程序而言,配置数据可以包括游戏中游戏角色在不同等级时对应的原始血量和原始攻击力等数据。
程序在使用的过程中,如果需要获取配置数据,需要先将配置数据加载进内存中,再去获取存储在内存中的配置数据。现有技术中,配置数据被加载进内存后,都是以数组对象集合的形式进行存储,其中,数组对象集合的形式为字符串形式,例如:一个游戏等级的配置文件中记录有的信息为:等级1的初始血量为1,护甲为1;等级2的初始血量为2,护甲为2,则数组对象集合的存储形式为:{(1,1)、(2,2)}。
发明人在实现本发明的过程中发现,现有技术至少存在如下问题:
现有技术中,配置数据以数组对象集合的形式进行存储,使得在查询一配置数据时,需要在遍历该配置数据之前的配置数据后,才能查询到该配置数据,使得查询的时间复杂度较高,例如,上述示例中,为了查询等级2的配置数据,需要在查询等级1的配置数据后,再去查询等级2的配置数据。
发明内容
本发明实施例的目的在于提供一种配置数据的存储方法,以降低配置数据查询时的查询的时间复杂度。具体技术方案如下:
本发明实施例提供一种配置数据的存储方法,包括:
获取配置文件,所述配置文件中记录有配置对象的配置数据;
将所述配置文件加载进内存,并基于所述配置对象的配置数据,生成数组对象;
为所述数组对象分配索引标识;
将所述数组对象与所述索引标识,在内存中进行关联存储。
进一步的,所述为所述数组对象分配索引标识,包括:
按照预先建立的配置数据与预设的索引字符的对应关系,获取所述数组对象中与所述索引字符对应的配置数据;
将所述索引字符与所述数组对象中与所述索引字符对应的配置数据进行组合,得到所述数组对象的索引标识。
进一步的,所述将所述数组对象与所述索引标识,在内存中进行关联存储,包括:
将所述数组对象与所述索引标识组合为Map数据结构中的键值对,并按照Map数据结构存储所述键值对,其中,所述索引标识作为Map数据结构中的键,所述数组对象作为Map数据结构中的值。
进一步的,将所述数组对象与所述索引标识组合为Map数据结构中的键值对,并按照Map数据结构存储所述键值对,包括:
对所述索引标识进行哈希运算,得到与所述数组对象对应的存储地址;
将所述数组对象与所述索引标识进行组合,生成键值对;
按照与所述存储地址,存储所述键值对。
进一步的,在所述将所述数组对象与所述索引标识对象组合为Map数据结构中的键值对,并按照Map数据结构存储所述键值对之后,还包括:
根据预设的排序需求,确定存储的每个键值对的数组对象中与所述排序需求对应的配置数据的大小;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京金山安全软件有限公司,未经北京金山安全软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910457135.3/2.html,转载请声明来源钻瓜专利网。