0

在我将对象添加到我之后NSMutableArray它变成nil(我签入NSLog


代码

guests = [[NSMutableArray alloc]init];
guests = [localDictionary objectForKey:@"guestsArray"];

[guests addObject:@"1"];
[guests addObject:@"12"];
[guests addObject:@"31"];

if(guests == nil)
{
    NSLog(@"WHY?");
}

你有什么想法为什么会发生?我应该检查什么?

4

2 回答 2

8

这是因为[localDictionary objectForKey:@"guestsArray"]是零。

于 2012-12-25T14:19:34.890 回答
3

您在第一行创建一个 NSMutableArray,然后使用从字典中获取的对象重新分配变量。

如果您想使用 guestArray 键从 localDictionary 中的对象添加对象,请改用:

guests = [[NSMutableArray alloc] initWithArray:[localDictionary objectForKey:@"guestsArray"]];

这样,即使您的“guestsArray 对象”在 localDictionary 中不存在,您的 guest 数组也不会为零。

于 2012-12-25T14:19:52.847 回答