如何从NSSet中返回一个NSMutableArray

我可以把NSSet的内容放入NSMutableArray如下所示:

 NSMutableArray *array = [set allObjects]; 

编译器抱怨,因为[set allObjects]返回一个NSArray而不是一个NSMutableArray 。 这应该如何解决?

由于-allObjects返回一个数组,你可以创build一个可变的版本:

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

或者,或者,如果您想处理对象所有权:

 NSMutableArray *array = [[set allObjects] mutableCopy]; 

我解决了使用NSMutableArray的方法'addObjectsFromArray'将所有NSSet对象分配给NSMutableArray崩溃,如:

 [mutableArray addObjectsFromArray:[cg_Schedule.schedule_Days allObjects]]; 

希望这会帮助你。

对于有序集使用:

 NSArray *myArray = [[myOrderedSet array] mutableCopy];