我有一个包含26部电影和每部电影3个问题的数据库。NSMutablearray中的NSMutablearray
我所做的是我的程序从数据库中随机选择一个问题,并将其显示在屏幕上。我遇到的问题是记录这个问题,以免它再次被选中。
到目前为止,我一直在玩这个:
usedMovie_id = [[NSMutableArray alloc] initWithCapacity:26];
usedQuestion_id = [[NSMutableArray alloc] initWithCapacity:4];
for (NSInteger i = 0; i < 26; ++i)
{
[usedMovie_id addObject:[NSNull null]];
}
for (NSInteger i = 0; i < 4; ++i)
{
[usedQuestion_id addObject:[NSNull null]];
}
while (i < 10) {
int ii = [self genRandomNumberForMovies];
int jj = [self genRandomNumberForQuestions:25];
NSLog(@"ii %d, jj %d", ii,jj);
[usedQuestion_id replaceObjectAtIndex:jj withObject:[NSNumber numberWithInt:jj]];
[usedMovie_id replaceObjectAtIndex:ii withObject:usedQuestion_id];
i++;
//NSLog(@"movie_id array %@", usedMovie_id);
}
我的问题是,数组usedQuestion_id不是在任何usedMovie_id指标的不同,他们都是一样的。如果usedQuestion_id为1,并且usedMovie_id在第一个循环中为13,然后usedQuestion_id为1,3,并且usedMovie_id在第二个循环中为10。 UsedQuestion_id在索引13处的usedMovie_id处(从第一个循环开始)更新为1,3。
另外我需要记录哪个问题已被回答正确和不正确,所以我只显示没有被正确回答的问题。
我不想创建26 nsmutablearrays每个与他们自己的数据。
我在想我可能需要一个nsdictionary,甚至是一个数据库.. 另外我可以在每个问题的答案开始和循环通过每个问题,而不是随机化。
谢谢,我在想你说的关于我的问题列表永远不会扩大的问题。 – bigubosu