добавление строки с последующим int в массив - PullRequest
3 голосов
/ 21 марта 2011

Я очень плохо знаком с Objective-C с какао, и мне нужна помощь.

У меня есть оператор for, в котором я зацикливаю i от 1 до 18, и я хотел бы добавить объект к NSMutableArray в этом цикле. Прямо сейчас у меня есть:

chapterList = [[NSMutableArray alloc] initWithCapacity:18];
for (int i = 1; i<19; i++)
{
    [chapterList addObject:@"Chapter"+ i];
}

Я бы хотел добавить объекты, глава 1, глава 2, глава 3 ..., глава 18. Я понятия не имею, как это сделать, или даже если это возможно. Есть ли способ лучше? Пожалуйста, помогите

Заранее спасибо,

Ответы [ 3 ]

3 голосов
/ 21 марта 2011
chapterList = [[NSMutableArray alloc] initWithCapacity:18];
for (int i = 1; i<19; i++)
{
    [chapterList addObject:[NSString stringWithFormat:@"Chapter %d",i]];
}

удачи

2 голосов
/ 21 марта 2011

Попробуйте:

[chapterList addObject:[NSString stringWithFormat:@"Chapter %d", i]];

В Objective-C / Cocoa вы не можете добавить строку, используя оператор +.Вы должны либо использовать такие вещи, как stringWithFormat:, чтобы создать полную строку, которую вы хотите, или такие вещи, как stringByAppendingString:, чтобы добавить данные в существующую строку. Ссылка NSString может быть полезным для начала.

1 голос
/ 21 марта 2011

Если вам нужны строки, которые просто говорят Chapter 1, Chapter 2, вы можете просто сделать это:

chapterList = [[NSMutableArray alloc] initWithCapacity:18];
for (int i = 1; i<19; i++) {
    [chapterList addObject:[NSString stringWithFormat:@"Chapter %d",i]];
}

И не забудьте освободить массив, когда закончите, так как вы вызываете alloc для него.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...