7

我有一个 NSMutableArray

@interface DetailViewController : UIViewController <UITableViewDelegate, UITableViewDataSource> {

NSMutableArray *reponses;
}
@property (nonatomic, retain) NSMutableArray *reponses;

@end

我正在尝试在我的数组 NSInteger 对象中添加:

@synthesize reponses;



NSInteger val2 = [indexPath row];
[reponses addObject:[NSNumber numberWithInteger:val2]];
NSLog(@"the array is %@ and the value is %i",reponses, val2);

它不会工作对象未添加到数组中,这是控制台显示的内容:

the array is (null) and the value is 2
4

3 回答 3

8

@Omz:是对的。确保已分配并初始化数组。请检查以下代码

NSMutableArray *array = [[NSMutableArray alloc] init];
NSInteger num = 7;
NSNumber *number = [NSNumber numberWithInt:num];
[ar addObject:number];
NSLog(@"Array %@",array);

我已经检查过了,它可以工作。如果array不再需要,请确保release它。

于 2011-12-22T08:03:10.217 回答
4

你没有初始化你的数组,所以nil当你试图添加它时它仍然存在。

self.responses = [NSMutableArray array];
//now you can add to it.
于 2011-12-22T07:55:09.163 回答
2

您尚未初始化响应数组。在您的代码中,可能是 viewDidLoad,请执行以下操作:

reponses = [[NSMutableArray alloc] init];

然后将对象添加到您的数组中。

NSInteger val2 = [indexPath row];
[self.reponses addObject:[NSNumber numberWithInteger:val2]];

那应该行得通。

于 2011-12-22T07:58:47.550 回答