2011-12-21 2 views
-4

Можно создать дубликат:
Picking a Random Object in an NSArrayСлучайный выбор в объективном C

Как выбрать случайный элемент из массива

NSMutableArray *array= [[NSMutableArray alloc] initWithObjects:@"first", @"second", @"third", @"fourth", nil]; 

Какой способ выбрать случайный элемент из массива, содержащего n количество элементов

+0

сделать несколько google Существуют различные методы для получения случайных данных из массива, и многие вопросы, похожие на ваши вопросы, доступны при переполнении стека. – Leena

ответ

2

Чтобы получить уникальное значение при каждом использовании srand() с отметкой времени.

srand([[NSDate date] timeIntervalSince1970]); 
int inx =rand()%[array count]; 
return inx; 
+1

лучше поместить srand в начале программы, а не в функцию произвольного выбора. –

+0

Да, @AndersK вы правы. –

6

Да, просто получите случайное число между 0 и n-1 где n - количество элементов. Например:

int i = arc4random() % [array count]; 
return [array objectAtIndex:i];