2010-01-26 5 views

Répondre

10

En fait, vous avez un tableau de NSStrings. Notez également que l'affectation d'une instance de NSArray à une référence NSMutableArray * n'a pas beaucoup de sens.

Dans tous les cas, vous pouvez:

for(NSString *foo in numberArray) { 
    int i = [foo intValue]; 
    .... 
} 

Notez que vous devez nommer les variables commençant par une lettre minuscule. Empêche la confusion et les conflits avec les noms de classe (que se passe-t-il si vous voulez créer une classe nommée Number plus tard?).

+0

Thanx très – Muniraj

0

En aparté, vous devez utiliser:

NSMutableArray *numStrings=[NSMutableArray arrayWithObjects: @"1", @"2", @"3", @"4", @"5", @"6", nil]; Le complément vous permettra d'assigner un NSArray à un NSMutableArray, mais si vous essayez de lui envoyer des messages spécifiques à NSMutableArray, il peut tomber en panne.

+0

le compilateur doit vous avertir que le les types ne sont pas compatibles, je pense. – Chuck

2

Voici comment tableau énumérez, NSArray est immuable, des entiers:

NSArray * numbers = [NSArray arrayWithObjects:[NSNumber numberWithInt:1], 
               [NSNumber numberWithInt:2], 
               [NSNumber numberWithInt:4], 
               [NSNumber numberWithInt:5], 
               [NSNumber numberWithInt:6], 
               [NSNumber numberWithInt:7], 
               nil]; 
// now print out 
id obj; 
NSEnumerator * enumerator; 

enumerator = [numbers objectEnumerator]; 
while ((obj = [enumerator nextObject])) NSLog(@"%@", obj); 

Voici comment ajouter des entiers dynamiquement à un tableau, NSMutableArray, (puis imprimer le tableau):

NSLog(@"\ndynamically add integers:"); 

NSMutableArray * num2 = [[NSMutableArray alloc] init]; 
int i; 
for (i = 0; i < 10; ++i) [num2 addObject:[NSNumber numberWithInt:i]]; 

// now print out 
enumerator = [num2 objectEnumerator]; 
while ((obj = [enumerator nextObject])) NSLog(@"%@", obj); 

sortie à la fois:

2010-01-27 14:51:40.307 x[5566] 1 
2010-01-27 14:51:40.308 x[5566] 2 
2010-01-27 14:51:40.308 x[5566] 4 
2010-01-27 14:51:40.308 x[5566] 5 
2010-01-27 14:51:40.308 x[5566] 6 
2010-01-27 14:51:40.308 x[5566] 7 
2010-01-27 14:51:40.308 x[5566] 
dynamically add integers: 
2010-01-27 14:51:40.308 x[5566] 0 
2010-01-27 14:51:40.308 x[5566] 1 
2010-01-27 14:51:40.308 x[5566] 2 
2010-01-27 14:51:40.308 x[5566] 3 
2010-01-27 14:51:40.308 x[5566] 4 
2010-01-27 14:51:40.308 x[5566] 5 
2010-01-27 14:51:40.308 x[5566] 6 
2010-01-27 14:51:40.308 x[5566] 7 
2010-01-27 14:51:40.308 x[5566] 8 
2010-01-27 14:51:40.309 x[5566] 9 
Questions connexes