web-dev-qa-db-fra.com

Comment retourner un NSMutableArray à partir d'un NSSet

Je peux mettre le contenu d'un NSSet dans un NSMutableArray comme ceci:

NSMutableArray *array = [set allObjects];

Le compilateur se plaint cependant parce que [set allObjects] renvoie un NSArray et non un NSMutableArray. Comment cela devrait-il être corrigé?

103
node ninja

Puisque -allObjects renvoie un tableau, vous pouvez créer une version mutable avec:

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

Ou bien, si vous souhaitez gérer la propriété de l'objet:

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