我有很多需要通过ID存储和检索的项目。但是,它们的ID并不总是从零开始。事实上,它们可能更高,例如500或更高。
如果我将这些存储在数组中,那么array[0] -> array[499]
为空,然后array[500] -> array[500+n]
包含对象,这是否会影响性能?或者,最好将它们存储在array[0] -> array[n]
中并迭代列表,直到找到具有相应ID的项目为止?
谢谢, 将
答案 0 :(得分:5)
在不知道您打算如何使用阵列的情况下,根据您提供的简要说明,我建议改为使用Dictionary
。
var dict:Dictionary = new Dictionary();
var someObject:Object {id: 500};
dict[someObject.id] = someObject; // store someObject in key 500
var retrievedObject:Object = dict[500]; // retrieve object from key 500