【发布时间】:2012-05-29 05:05:51
【问题描述】:
我正在尝试将 NSMutableArray 添加到其他 NSMutableArray,这是一个设置为实例 ivar 的可变数组,但我总是将数组 arrayPlayoff 设为空。我检测到的另一件事是,在附加方法中进行调试时,局部变量不会显示在调试器变量部分中,即使选择“本地”选项也是如此。
-(void)loadGamesPlayoffs{
NSMutableArray *eli1 = [[NSMutableArray alloc] init];
NSMutableArray *eli2 =[[NSMutableArray alloc] init];
NSMutableArray *eli3 = [[NSMutableArray alloc] init];
NSMutableArray *eli4 = [[NSMutableArray alloc] init];
for (NSDictionary *eliminatoria in copaReyArray){
int eli = [[eliminatoria valueForKey:@"eliminatoria"]integerValue];
NSLog(@"eli %d", eli);
if (eli==1){
[eli1 addObject:eliminatoria];
} else if (eli==2){
[eli2 addObject:eliminatoria];
}else if (eli==3){
[eli3 addObject:eliminatoria];
} else if (eli==4){
[eli4 addObject:eliminatoria];
}
}
[arrayPlayOff addObject:eli1];
[arrayPlayOff addObject:eli2];
[arrayPlayOff addObject:eli3];
[arrayPlayOff addObject:eli4];
}
many thanks
【问题讨论】:
-
好像你没有初始化
arrayPlayOff导致问题? -
各位,非常感谢!你可以发布你的答案来投票给你吗?我错误地认为 ivar 不需要初始化.....
-
@theomen -- “初始化变量”(将其设置为某个已知值)与创建变量要指向的对象之间存在很大差异。 Objective-C 中的所有 ivars 都会自动“初始化”,因为它们在创建对象时被设置为零/nil。但如果 ivar 旨在寻址一个对象,例如 NSArray,则该对象是不创建的。
标签: objective-c ios5