即使我再次執行下面的代碼&我得到相同的輸出。但是,我認爲它不應該:爲什麼Rand()總是生成固定唯一組數的隨機數?
int ObjectCount =500;
NSMutableArray *mut_arr = [[NSMutableArray alloc]initWithCapacity:0];
for (int i = 0; i<ObjectCount ; i++)
{
[mut_arr addObject:[NSNumber numberWithInt: rand()%ObjectCount]];
}
NSSet* uniqueSet = [NSSet setWithArray:mut_arr];
NSLog(@"Array of %d objects generates %d Unique Objects",[mut_arr count],[uniqueSet count]);
輸出如下:
陣列500對象產生317個唯一對象
這裏,因爲數組包含隨機數的一套獨特的計數應對於相同的ObjectCount,再次相同&。
請參閱:http://stackoverflow.com/questions/3322603/how-do-i-seed-the-random-generator-and-create-a-random-int-in-objective-c – doctorlove