按ID在数组中存储项目

Wil*_*ill 2 actionscript actionscript-3

我有许多需要通过ID存储和检索的项目.但是,它们的ID并不总是从零开始.事实上,它们可能要高得多,例如500或更高.

如果我将这些存储在一个数组中,那么array[0] -> array[499]是null然后array[500] -> array[500+n]包含对象,这是否会影响性能?或者,它会更好地存储它们array[0] -> array[n]并迭代列表,直到我找到具有相应ID的项目?

谢谢,威尔

Mar*_*ela 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
Run Code Online (Sandbox Code Playgroud)