當我使用一個NSArray,很容易:如何從NSDictionary中選擇一個隨機密鑰?
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 :.那麼我怎麼做到這一點?
這是一個NSDictionary(不是NSMutableDictionary),所以它不會增長。它將在應用程序啓動時顯式創建,使用[[NSDictionary alloc] initWithObjectsAndKeys:...,nil]; – Elliot 2009-07-10 22:49:54