Question

Quelle est la différence?

Dans mon contexte, je dois pouvoir ajouter et supprimer dynamiquement des objets. L'utilisateur clique sur les lignes d'une table qui vérifient ou non et ajoutent ou suppriment donc l'objet référencé de la liste.

On suppose que ce tableau contient des éléments indexés alors que l'ensemble n'a pas d'index?

Était-ce utile?

La solution

Un NSSet / NSMutableSet ne conserve pas les éléments dans un ordre particulier. Un NSArray / NSMutableArray stocke les éléments dans un ordre particulier. Si vous construisez une vue sous forme de tableau, vous devez absolument utiliser un tableau comme source de données de votre choix.

Autres conseils

NSMutableSet veille également à ce que tous les objets soient uniques.

NSMutableArray va bien avec UITableView car les éléments ont un index. Vous pouvez donc renvoyer [nombre de tableaux] pour obtenir le nombre de lignes de la table ou [tableau objectAtIndex: rowNumber] pour facilement associer un élément à une ligne.

De même, selon dans la documentation , le test d’appartenance aux objets est plus rapide avec les NSSets.

  

Vous pouvez utiliser des ensembles comme alternative aux tableaux lorsque l'ordre de   les éléments n'est pas important et la performance pour tester si un objet   est contenue dans l'ensemble est une considération - alors que les tableaux sont ordonnés,   le test d'adhésion est plus lent qu'avec les ensembles.

Eh bien, il y a 3 différences principales. 1) Les ensembles ne sont pas ordonnés. 2) Ne disposez pas d’index & amp; 3) Impossible de dupliquer les valeurs lorsque les tableaux sont classés, indexés & amp; peut stocker des valeurs en double.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top