Em AS3, onde você desenha a linha entre Dictionary e ArrayCollection?

Basicamente eu tenho usado um objeto Dictionary no meu programa que basicamente levou ints como suas chaves e IDs de peer RTMFP armazenados nos locais apropriados. Cada int era único e representava um usuário.

Agora estou precisando expandir isso onde os usuários são identificados por uma combinação do int e um valor booleano, como este:

private var m_iUID:int;
private var m_blnIsCurrent:Boolean;

Somente a combinação entre esses dois realmente identifica o usuário. Dito isto, eu estava prestes a usar uma nova classe feita para as chaves do dicionário; mas então ocorreu-me que, em vez de fazê-lo dessa maneira, eu poderia simplesmente adicionar o ID do mesmo nível à definição de classe e transformar o objeto Dictionary em um ArrayCollection:

private var m_iUID:int;
private var m_blnIsCurrent:Boolean;
public var m_strNearID:String;

Então, agora eu estou querendo saber qual é realmente melhor neste cenário. E essa questão levou a uma questão maior: onde você realmente desenha a linha entre esses dois tipos de coleção em geral? De repente eles estão começando a não parecer tão diferentes afinal, exceto onde você está tentando evitar mexer nas definições de classe. Eu acho que estou realmente pedindo conselhos sobre o cenário específico e a questão geral. Obrigado!

questionAnswers(2)

yourAnswerToTheQuestion