2012-11-15 22 views
0

我似乎遇到了NSMutableArray的问题。使用addObject到NSMutableArray时出现Seg错误

这里是我的代码:

NSMutableArray *returnArray = [[NSMutableArray alloc] init]; 

while(condition) { 
    NSInteger temp = someNumber; 
    [returnArray addObject: temp]; 

} 

但只要它击中ADDOBJECT消息,该程序赛格故障。有什么建议?

回答

0

您不能将整数等基元添加到数组中,只能添加对象(因此名称为addObject :)。如果你想添加数字,你必须将它们转换为一个NSNumber,或者其中一个相关的类。

0

您只能将对象添加到数组,而NSInteger不是数组。

NSMutableArray *returnArray = [[NSMutableArray alloc] init]; 

while(condition) { 
    [returnArray addObject: [NSNumber numberWithInt: someNumber]]; 
} 
+1

或者使用新的Objective-C的语法:'[returnArray ADDOBJECT:@(临时)]。 ' – rmaddy

0

你需要用原语如NSIntegerNSNumber类。你可以做到以下几点:

​​3210

或者,如果你的编译器不支持该语法:

while(condition) 
{ 
    NSInteger temp = someNumber; 
    [returnArray addObject:[NSNumber numberWithInteger:temp]]; 
} 
相关问题