将一个字符串后跟一个int添加到数组中

时间:2011-03-21 04:13:15

标签: objective-c cocoa string nsmutablearray int

我对使用Cocoa的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 个答案:

答案 0 :(得分:3)

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

答案 1 :(得分:2)

尝试:

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

在Objective-C / Cocoa中,您无法使用+运算符附加到字符串。您必须使用stringWithFormat:之类的内容来构建所需的完整字符串,或者使用stringByAppendingString:之类的内容将数据附加到现有字符串。 NSString reference可能是一个有用的起点。

答案 2 :(得分:1)

如果您想要只说Chapter 1Chapter 2的字符串,您可以这样做:

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

当你完成时,不要忘记释放数组,因为你在它上面调用了alloc