NSMutableArray *Number=[NSArray arrayWithObjects: @"1", @"2", @"3", @"4", @"5", @"6", nil];
У меня есть массив целых чисел и вам нужно их прочитать по одному. Может ли кто-нибудь рассказать мне, как его кодировать?Как читать массив целых чисел?
NSMutableArray *Number=[NSArray arrayWithObjects: @"1", @"2", @"3", @"4", @"5", @"6", nil];
У меня есть массив целых чисел и вам нужно их прочитать по одному. Может ли кто-нибудь рассказать мне, как его кодировать?Как читать массив целых чисел?
На самом деле, у вас есть массив NSStrings.
Обратите также внимание, что назначение экземпляра NSArray для ссылки NSMutableArray * не имеет большого смысла.
В любом случае, вы можете:
for(NSString *foo in numberArray) {
int i = [foo intValue];
....
}
Обратите внимание, что вы должны назвать переменные, начинающиеся с буквы нижнего регистра. Предотвращает путаницу и конфликты с именами классов (что, если вы хотите создать класс с именем Number
позже?).
Как и в сторону, вы должны использовать:
NSMutableArray *numStrings=[NSMutableArray arrayWithObjects: @"1", @"2", @"3", @"4", @"5", @"6", nil]
;
Компетентник позволит вам назначить NSArray для NSMutableArray, но если вы попытаетесь отправить его конкретные сообщения NSMutableArray, это может привести к сбою.
компилятор должен предупредить вас о том, что Я думаю, что типы не совместимы. – Chuck
Это, как вы перечислить массив, NSArray неизменен, целых:
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);
Это как добавить целые динамически массив, NSMutableArray, (а затем напечатать массив):
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);
Выход из обоих:
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
спасибо очень – Muniraj