当我使用 NSArray 时,这很简单:
NSArray *array = ...
lastIndex = INT_MAX;
...
int randomIndex;
do {
randomIndex = RANDOM_INT(0, [array count] - 1);
} while (randomIndex == lastIndex);
NSLog(@"%@", [array objectAtIndex:randomIndex]);
lastIndex = randomIndex;
我需要跟踪 lastIndex 因为我想要随机的感觉。也就是说,我不想连续两次获得相同的元素。所以它不应该是“真正的”随机性。
据我所知,NSDictionary 没有 -objectAtIndex: 之类的东西。那么我该如何实现呢?