NSMutableOrderedSet为NSMutableArray

时间:2013-10-22 04:26:21

标签: ios objective-c nsmutablearray nsorderedset nsmutableorderedset

array = [NSMutableArray arrayWithArray:[set allObjects]];

这适用于NSSet,但如何让它与NSMutableOrderedSet一起使用?

1 个答案:

答案 0 :(得分:34)

NSOrderedSet类上有一个方法来获取数组[orderedSet array]。然后你可以[array mutableCopy]来获得一个可变数组。

或如果您愿意,请使用[NSMutableArray arrayWithArray:[set array]];

请注意这一点:

  

这将返回接收有序集的代理对象,其作用类似于不可变数组。   虽然你不能通过这个代理改变有序集,但是原始有序集的突变将反映在代理中,并且它似乎会自发地改变,因为没有订购集的副本。

如果你不想要这种行为,基本上你必须复制数组。