Как вернуть NSMutableArray из NSSet
Я могу помещать содержимое NSSet
в NSMutableArray
следующим образом:
NSMutableArray *array = [set allObjects];
Компилятор жалуется, потому что [set allObjects] возвращает NSArray
не a NSMutableArray
. Как это должно быть исправлено?
Ответы
Ответ 1
Так как -allObjects
возвращает массив, вы можете создать изменяемую версию с помощью:
NSMutableArray *array = [NSMutableArray arrayWithArray:[set allObjects]];
Или, наоборот, если вы хотите обработать право собственности на объект:
NSMutableArray *array = [[set allObjects] mutableCopy];
Ответ 2
Я решил сбой с помощью метода NSMutableArray "addObjectsFromArray", чтобы присвоить всем объектам NSSet значение NSMutableArray, например:
[mutableArray addObjectsFromArray:[cg_Schedule.schedule_Days allObjects]];
Надеюсь, это поможет вам.
Ответ 3
Для упорядоченного набора используйте:
NSArray *myArray = [[myOrderedSet array] mutableCopy];