-1

可能重复:
NSMutableArray addObject 不工作

我有一个 NSMutableArray 在我的 .h 文件中声明为 (nonatomic,retain) ,并正确合成。tempRandomWord 是一个始终填充的 NSString。但是,count 始终返回 0。任何想法为什么?

[pastWords addObject:tempRandomWord];
int count=[pastWords count];
NSLog(@"%i",count);
4

2 回答 2

0

您可能忘记了初始化数组。您在 viewDidLoad 或其他地方需要这条线

pastWords = [NSMutableArray array];

我个人喜欢把它们放在需要的地方,如下所示:

if (!pastWords) {
    pastWords = [NSMutableArray array];
}

[pastwords addObject:object];
于 2012-07-20T19:31:10.413 回答
0

您的数组未初始化。只需在读取/使用属性之前在某处添加延迟初始化。

self.pastWords=self.pastWords?self.pastWords:[NSMutableArray array];

或者如果您直接使用 iVar:

pastWords=pastWords?pastWords:[NSMutableArray new];

或 init 中的正常初始化

如果您从类外部分配该属性,您可能需要调用 mutableCopy 以确保使用可变数组,即使分配了 NSArray 也是如此。

于 2012-07-20T20:06:40.353 回答