我讀了一個文本文件到一個字符串數組。在下面的代碼中,我從該數組創建對象並將它們添加到NSMutableArray中。NSMutableArray額外零哨兵
NSMutableArray* metaphors = [[NSMutableArray alloc] init];
unsigned int i, cnt = [allLinedStrings count];
for(i = 0; i < cnt-3; i+=5)
{
Metaphor *newMetaphor = [[Metaphor alloc] init];
[newMetaphor setMetaphorTitle: allLinedStrings[i]];
[newMetaphor setCorrectAnswer: allLinedStrings[i+1]];
[newMetaphor setLiteralAnswer: allLinedStrings[i+2]];
[newMetaphor setWayOffAnswer: allLinedStrings[i+3]];
[metaphors addObject:newMetaphor];
}
至於問題,當我通過索引來訪問的任何項目([隱喻objectAtIndex:3]例如)所有其他元素(奇數的)是零元素。儘管如此,所有的對象都被添加到數組中。我的猜測是,addObject是添加一個元素到數組以及每次都有一個新的零標記?如果發生這種情況/我應該手動通過並刪除這些元素?另外一個方面,因爲我是新來的Objective-C,我的隱喻類包含4個實例字段,您可以在正文中看到:我確定有更快的語法來初始化這些對象之一,如果有人可以指出我正確的方式。謝謝。
是的,我的問題竟然與讀取文件有關,而不是將對象添加到數組中。謝謝。 – Connor