Проблема, связанная с изменением значения в NSMutablearray

Я столкнулся с проблемой со значениями в NSMutablearray. У меня есть два NSMutablearray, оба хранят одно и то же содержимое с помощью mutablecopy. Проблема в том, что когда я изменяю значение в одном массиве, соответствующее значение во втором массиве также изменяется. Как решить это. Пожалуйста, помогите мне.

1 ответ

Решение

mutableCopy копирует по ссылке, а не по значению. Таким образом, любое изменение одного из этих объектов влияет на оба массива.

Вы могли бы реализовать различные методы, чтобы преодолеть эту ситуацию.

// первый метод

nameArray2 = [NSMutableArray new];
[nameArray2 addObjectsFromArray:nameArray1];

// второй метод

nameArray2 = [[NSMutableArray alloc] initWithArray:nameArray1 copyItems:YES];

С наилучшими пожеланиями.

Другие вопросы по тегам