Как проверить повторение чисел в массиве? - PullRequest
0 голосов
/ 26 января 2010

Я генерирую случайные числа и сохраняю их в массиве:

int RandomNumber = arc4random() % 12;
[NSMutablearray *Number addObject:[NSNumber numberWithInt:RandomNumber]];

Теперь я хочу убедиться, что это же число не было создано случайно снова. Может кто-нибудь, пожалуйста, скажите мне, как это сделать с примером кода.

1 Ответ

7 голосов
/ 26 января 2010

Вы можете использовать NSMutableSet вместо массива при генерации чисел. Следующий код создаст массив из 10 уникальных случайных чисел:

NSMutableSet *aSet = [NSMutableSet setWithCapacity:10];
while([aSet count]<=10){
    int Randnum = arc4random() % 12;
    [aSet addObject:[NSNumber numberWithInt:Randnum]];
} 
NSArray *arrayOfUniqueRandomNumbers = [aSet allObjects];
...