0
-(id) initWithData:(NSString *)lastName: (NSString *)firstName{
self->firstname = firstName;
self->lastname = lastName;
return self;
}
-(void) printData {
NSLog(@"firstname: %@", firstname);
NSLog(@"lastname: %@", lastname);
}
所以每当我使用上面的init函数创建一个新的对象。并使用addObject函数将对象添加到NSMutableArray。添加自定义定义对象到NSMutableArray覆盖整个阵列
NSMutableArray *objectArray = [[NSMutableArray alloc] init];
CustomObject *tempObject = [[CustomObject alloc] initWithData: @"smith": @"john"];
CustomObject *tempObjectb = [[CustomObject alloc] initWithData: @"brown": @"william"];
[objectArray addObject:tempObject];
[objectArray addObject:tempObjectb];
[[objectArray objectAtIndex:0] printData];
[[objectArray objectAtIndex:1] printData];
索引1处的对象和0总是等于最后添加到数组中的对象。
这也发生如果我使用for循环,或有超过2个对象,所有值打印时,转到最后添加对象的值objectArray。如果有任何我缺少的信息,请告诉我。 有什么,我失踪?
什么是causeArray? –
尝试添加到你的'initWithData':if(self = [super init] {.. rest here here ..} return self;}。我假设你的自定义对象继承自NSObject,因此你必须调用[super init ]。 – iska
对不起,错误的变量名称。 – randomNumberedUser