Я новичок в Objective-C и пытаюсь создать простое приложение в стиле словаря для личного пользования.Прямо сейчас я пытаюсь создать цикл, который печатает случайно выбранные NSArray
s, которые были добавлены к NSDictionary
.Я хотел бы распечатать каждый массив только один раз.Вот код, с которым я работаю:
NSArray *catList = [NSArray arrayWithObjects:@"Lion", @"Snow Leopard", @"Cheetah", nil];
NSArray *dogList = [NSArray arrayWithObjects:@"Dachshund", @"Pitt Bull", @"Pug", nil];
...
NSMutableDictionary *wordDictionary = [[NSMutableDictionary alloc] init];
[wordDictionary setObject: catList forKey:@"Cats"];
[wordDictionary setObject: dogList forKey:@"Dogs"];
...
NSInteger keyCount = [[wordDictionary allKeys] count];
NSInteger randomKeyIndex = arc4random() % keyCount;
int i = keyCount;
for (i=i; i>0; i--) {
NSString *randomKey = [[wordDictionary allKeys] objectAtIndex:randomKeyIndex];
NSMutableArray *randomlySelectedArray = [wordDictionary objectForKey:randomKey];
NSLog(@"%@", randomlySelectedArray);
}
Этот код печатает один и тот же массив "i" раз.Есть какие-нибудь указания, как исключить повторную печать ранее напечатанных массивов?
Мне интересно, может ли removeObjectForKey:
быть полезным.