Как я могу получить Первоначальный заказ NSDictionary/NSMutableDictionary?

я создал NSMutableDictionary с 10 ключами. Теперь я хочу получить доступ к NSMutableDictionary, вводит тот же порядок, как он был добавлен к NSMutableDictionary (использующий SetValue:* forKey:*);

Как я могу достигнуть этого?

10
задан iwasrobbed 2 August 2010 в 14:16
поделиться

2 ответа

Если вы абсолютно точно должны использовать контейнер словаря, вы должны использовать ключ, который сортируется в порядке добавления пар ключ-значение. Таким образом, при создании словаря вы используете ключ, который представляет собой автоинкрементирующееся целое число или что-то подобное. Затем вы можете сортировать (целочисленные) ключи и извлекать значения, связанные с этими ключами.

Однако, если вы делаете все это, вы можете просто использовать NSMutableArray и добавлять значения в массив напрямую! Это будет намного быстрее и потребует меньше кода. Вы просто получаете объекты в порядке:

for (id obj in myArray) { /* do stuff with obj... */ }
9
ответ дан 3 December 2019 в 20:39
поделиться

NSMutableDictionary не может этого сделать. Взгляните, например, на OrderedDictionary Мэтта Галлахера.

7
ответ дан 3 December 2019 в 20:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: