Как получить уникальные значения на основе словарного ключа, который является элементом массива в цели C? - PullRequest
4 голосов
/ 27 сентября 2010

Как получить уникальные значения на основе словарного ключа, который является элементом массива в задаче C?

например:

У меня есть массив предметов

aryItem

  aryItem[0] = Dictionary{

               ItemCategory
               ItemName
               ItemPrice

               }

  aryItem[1] = Dictionary{

               ItemCategory
               ItemName
               ItemPrice

               }

   ...........
   ...........
  aryItem[n] = Dictionary{

               ItemCategory
               ItemName
               ItemPrice

               }

Теперь я хочу получить только уникальную ItemCategory, а не дубликаты. Если я могу написать [[aryItem objectatIndex: i] valueForKey: ItemCategory], я получу все категории, эта же категория также включена в это. Мне нужны только уникальные категории. У меня есть возможность поиска по всему массиву, а затем получить уникальные объекты Itemcategory, но я ищу какой-нибудь короткий способ сделать то же самое.

Спасибо.

1 Ответ

6 голосов
/ 27 сентября 2010

Я думаю, что класс NSSet наиболее подходит для сбора уникальных значений. Вы можете создать его, используя что-то вроде:

NSSet* categories = [NSSet setWithArray: [aryItem valueForKey: @"ItemCategory"]];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...