2009-06-25 7 views
1

Je veux un tableau qui ne contient que des éléments uniques. Je sais que je pourrais le faire avec un NSDictionary en ajoutant des éléments avec des clés et ensuite obtenir tous les clés. Cela permettrait de s'assurer que NSArray ne contient que des éléments uniques, mais je pense que cela serait exagéré et je crois qu'il devrait y avoir un moyen plus simple de le faire, mais je ne peux pas en trouver un.iPhone - Comment créer une liste d'éléments uniques

Répondre

6
NSArray* uniqueArray = [[NSSet setWithArray:originalArray] allObjects]; 

+0

Cela ne devrait-il pas être NSArray * uniqueArray = [[NSSet withWithArray: originalArray] allObjects]; – willc2

+0

+1 pour répondre avec du code et non un lien. – willc2

1

Vous pouvez utiliser NSSet pour cette

2

Utilisez NSSet ou NSMutableSet pour cela. Gardez à l'esprit que l'unicité sera basée sur l'adresse de l'objet si vous ne remplacez pas la méthode isEqual:. À moins, bien sûr, que vous utilisiez des classes qui implémentent cette méthode (NSNumber, NSValue, par exemple). L'unicité est basée sur la méthode isEqual:

Questions connexes