最近在做架构中的DataStore数据存储容器
在选择存储结构的时候,面临了在以上3个存储结构中做选择
对此收集了下关于这3个数据结构的区别和适合应用的场景
1.Dictionary和List都是强类型,存储在这2个结构中的对象在引用调用时都不需要进行拆包,而HashTable则需要拆包,在非基础数据类型的数据被遍历调用的时候,使用HashTable效率较低,因为数据需要进行拆包,而Dictionary和List则效率较高,而且在编程中对类型的控制较易,程序也比较容易识别
2.List和Dictionary都是线性表,数据是有顺序排列的,可以直接做排序等操作,而HashTable则是无序存放的,好处是因为有索引键,所以HashTable查询数据效率较高,而List只能用遍历的方式来查找数据,而Dictionary则是二者兼顾
根据以上特点,我分析了我的项目,首先,我需要有一个线性存取的结构,因为在项目中,大多数情况都是顺序读取绑定,然后作为一个数据缓存结构,我需要有良好的查找,读取性能和较少的内存消耗,最终我的选择是Dictionary结构作为我的主存储