Подтвердить что ты не робот

Есть ли способ объединить два NSMutableArray в объекте c?

У меня есть два NSMutableArray, заполненных объектом данных. как сравнить и массив, и слияние, если обнаружено какое-либо изменение.

например: Array1= index(0) userName = {'a',1,'address'}  index(1) userName = {'b',2,'address'}

Array2= index(0) userName = {'c',3,'address'}  index (1) userName = {'b',2,'address'}

Результат: Array= index(0) userName = {'a',1,'address'}   index (1) userName = {'b',2,'address'}        index(2) userName = {'c',3,'address'}

Пожалуйста, помогите

4b9b3361

Ответ 1

Простым способом является использование множеств:

NSMutableSet *set = [NSMutableSet setWithArray:array1];
[set addObjectsFromArray:array2];

NSArray *array = [set allObjects];

Хотя вам придется сначала сортировать array.

(N.B., я использовал имена нижних регистров для переменных, как обычно принято).

Ответ 2

NSArray *array1, *array2;

...

MSMutableArray *result = [array1 mutableCopy];
for (id object in array2)
  {
  [result removeObject:object];  // make sure you don't add it if it already there.
  [result addObject:object];
  }