Ключи и значения в NSDictionary заказаны?

4 ответа

Нет, они не упорядочены. Пока вы не добавляете и не удаляете какие-либо элементы из словаря, они останутся в том же порядке, но как только вы добавите или удалите элемент, новый порядок будет совершенно другим.

Если вам нужен Для упорядоченных ключей / значений используйте NSArray (или другую упорядоченную структуру данных).

19
ответ дан 1 December 2019 в 20:57
поделиться

Ключи и значения NSDictionary не упорядочены. Ваши варианты:

  • Поддерживать отдельный массив ключей в желаемом порядке
  • Записать или найти существующий класс, который является оболочкой для вышеуказанного
  • Записать или найти существующий подкласс NSDictionary, который добавляет API для упорядочивания
3
ответ дан 1 December 2019 в 20:57
поделиться

NSDictionary, согласно справочнику Apple , в основном представляет собой оболочку вокруг хеш-таблицы. Так что нет, их порядок не гарантируется.

1
ответ дан 1 December 2019 в 20:57
поделиться

ключи никогда не гарантируются в том же порядке при доступе к NSDictionary. Если ключи можно сравнить (что, я полагаю, им можно задать ваш вопрос), вы всегда можете отсортировать их, если вам нужно получить к ним доступ в отсортированном порядке.

Для этого вам нужно будет сначала прочитать ключи в массиве и, конечно же, отсортировать массив.

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

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