字典的大小对于应用来说太大了?

时间:2012-09-10 01:28:29

标签: c# windows-phone-7

我正在编写一个Windows Phone应用程序(在c#中),其中包含大量数据。

我想将这些数据存储在字典中(或者理想情况下不是一个数组),但是会有大约10 000个字典值(分布在3-4个字典中)。你认为这些词典会太大,占用太多记忆吗?

词典将为Dictionary<int, customClass>

使用数组显然会更好,但你认为使用字典是否可以?

2 个答案:

答案 0 :(得分:1)

这一切都取决于您存储的实际对象的数量......以及这些对象的大小。字典本身只有32(或64)位x 10,000 x 2(键和值)加上一个小开销 - 即小...因为字典只存储指向对象的指针。

答案 1 :(得分:1)

集合中的项目数量(如字典/数组/列表)无关紧要,10w整数的成本低于1M(约100,000 * 4bytes)。因此,内存成本主要取决于CustomClass中的商店。如果该类仅包含一些原始属性,则它也不会花费很多内存。你不应该非常担心内存成本,除非你做一些事情,比如把文件的数据加载到类的属性上。