4 votes

Comment vérifier si *nombre* est dans un tableau ?

Question de programmation assez basique, je sais que PHP a une fonction pour ça, mais est-ce que l'iPhone OS en a une ?

Je veux vérifier si le chemin d'index actuel est une valeur dans un tableau.

Exemple PHP :

<?php
$indexPath = 3;
$array = array("0", "1", "2", "3", "4");
if (in_array($indexPath, $array)) {
  // Do something
}
?>

Quelqu'un sait-il comment faire la même chose dans iOS ?

20voto

prendio2 Points 1165

containsObject :
Renvoie une valeur booléenne qui indique si un objet donné est présent dans le récepteur.

- (BOOL)containsObject:(id)anObject

Par exemple :

if ([arrayofNumbers containsObject:[NSNumber numberWithInt:516]])
    NSLog(@"WIN");

ou pour vérifier un indexPath :

if ([arrayofIndexPaths containsObject:indexPath])
    NSLog(@"Yup, we have it");

Je dois préciser qu'un NSIndexPath n'est pas un nombre mais une série de nombres qui "représente le chemin vers un nœud spécifique dans un arbre de collections de tableaux imbriqués", comme l'explique plus en détail la section la documentation destinée aux développeurs .

9voto

Jeff B Points 20021

Vous voulez containsObject o indexOfObject :

unsigned int myIndex = [myArray indexOfObject: [NSNumber numberWithInt: 3]];
if(myIndex != NSNotFound) {
     // Do something with myIndex
}

Ou :

if([myArray containsObject: [NSNumber numberWithInt: 3]]) {
    // Just need to know if it's there...
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X