NSMutableOrderedSet to NSMutableArray
array = [NSMutableArray arrayWithArray:[set allObjects]];
Это сработало NSSet
, но как мне заставить его работать с NSMutableOrderedSet
?
1 ответ
В классе NSOrderedSet есть метод для получения массива [orderedSet array]
, Вы можете сделать [array mutableCopy]
чтобы получить изменяемый массив.
или использовать [NSMutableArray arrayWithArray:[set array]];
Если вы предпочитаете.
однако следует помнить об этом:
Это возвращает прокси-объект для получения упорядоченного набора, который действует как неизменный массив. Хотя вы не можете изменить порядок упорядоченного набора через этот прокси-сервер, мутации в исходном упорядоченном наборе будут отражены в прокси-сервере, и, как представляется, он самопроизвольно изменится, поскольку копия упорядоченного набора не создается.
в основном вы должны скопировать массив, если вы не хотите такого поведения.