0

我试图让我的代码运行,但它总是停止。你们谁能帮我解决这个问题。由于某种原因,它不会接受这一点。

-(Animal *) getAnimalAt:(int)input {
    //NSLog(@"show input %ld", input);
    Animal *ani = [animals objectAtIndex:input];
    return ani;
}

我在我的主要方法中调用此方法:

for(int i=0;i< count;i++){
        Animal *ani = [farm getAnimalAt:i];
        NSLog(@"ani :  %@",[ani makeSound]);
        NSLog(@"ani :  %@",[ani doFly]);
    }

如果您需要更多信息或代码,请询问。

你们中的任何人都找到了一个很好的教程吗?我好像找不到一个?或者像codingbat这样的网站会很有帮助。

4

1 回答 1

1

如果动物只是一个NSArray你可以删除该getAnimalAt:方法并只使用 NSArray。然后你可以做类似的事情:

for (Animal *ani in animals) {
    NSLog(@"ani :  %@", [ani makeSound]);
    NSLog(@"ani :  %@", [ani doFly]);
}

这将防止任何count大于元素数量的问题animals

于 2013-03-07T23:10:31.583 回答