当我从NSMutableArray获取它时,为什么我的对象为零?

时间:2013-01-24 13:21:36

标签: ios objective-c nsmutablearray

我在这里遇到此代码的问题

Book *theNewBook = [self parseTheBookXML];
// The book is not nil here
NSLog(@"The book's title: %@, number of pages:%@ and author: %@",theNewBook.title, theNewBook.pages, theNewBook.author);

[_theBooksArray addObject:theNewBook];

// TEST
Book *testBook = [_theBooksArray objectAtIndex:0];
// The book is nil here
NSLog(@"The book's title: %@, number of pages:%@ and author: %@",testBook.title, testBook.pages, testBook.author);

任何人都可以告诉我为什么我的书籍对象是'无',因为我在这里撞墙了......

3 个答案:

答案 0 :(得分:1)

从我对问题的评论中可以看出,我的问题是我没有初始化我正在访问的数组。

[_theBooksArray addObject:theNewBook];

调用

_theBooksArray = [[NSMutableArray alloc] initWithObjects:theNewBook, nil];

会做到这一点。

答案 1 :(得分:0)

[_theBooksArray addObject:theNewBook];
[_theBooksArray count];

打印日志并检查数组计数。

答案 2 :(得分:0)

使用前必须初始化数组。

_theBooksArray = [[NSMutableArray alloc] init];