Comment déterminer un indice de tableau en Objective C?
-
16-09-2019 - |
Question
J'ai deux tableaux dans Objective C et je dois trouver ce que l'index est quelque chose que je puisse l'insérer dans le même endroit. Par exemple, disons que j'ai un « tableau de nom » et un « tableau d'âge ». Comment puis-je savoir ce que l'indice « charlie » est dans le « tableau de noms » Je sais donc où insérer son âge dans le tableau « âge »?
Merci
La solution
-[NSArray indexOfObject:]
semble être le choix logique
Autres conseils
cacao, des réseaux parallèles sont un chemin à condamner et ruine. Vous ne pouvez pas les utiliser efficacement avec fixations, de sorte que vous devrez écrire beaucoup de code de colle à la place, comme si Manchettes n'existait pas. De plus, vous tuer tout futur AppleScript / script support Bridge, vous pouvez l'intention d'avoir avant même de commencer à mettre en œuvre.
La bonne façon est de créer une classe de modèle avec des propriétés name
et age
, et ont un seul tableau d'instances de cette classe. Ensuite, pour trouver un élément par son nom ou de l'âge, utilisez NSPredicate
pour filtrer le tableau et indexOfObjectIdenticalTo:
pour trouver l'index de chaque élément du tableau filtré dans le tableau principal.
La différence entre indexOfObject:
et indexOfObjectIdenticalTo:
est que les premiers envoyer des messages isEqual:
pour déterminer si chaque objet est celui qu'il cherche, alors que ce dernier ne rechercher l'objet spécifique que vous transmis. Ainsi, vous pouvez utiliser indexOfObject:
avec un objet qui ne sont pas dans le tableau, mais est égal à celui qui est, afin de trouver l'objet égal dans le tableau.
Vous pourriez vouloir utiliser un NSDictionary, aussi, si vous faites des recherches à partir de chaînes.