我想要爲賓果應用程序生成一個唯一的數字,現在它的選擇在90之間的90個隨機數字,並將它們添加到NSMutableSet。這一切都有效,但我從集合中挑選出的號碼是唯一的,所以相同的號碼被拉出兩次。生成一個唯一的數字
這是我到目前爲止有:
NSMutableSet * numberSet1 = [NSMutableSet setWithCapacity:90];
while ([numberSet1 count] < 90) {
NSNumber * randomNumber1 = [NSNumber numberWithInt:(arc4random() % 90 + 1)];
[numberSet1 addObject:randomNumber1];
}
//NSLog(@"numberWithSet : %@ \n\n",numberSet1);
NSArray * numbers = [numberSet1 allObjects];
//to display
int r = arc4random() % [numbers count];
if(r<[numbers count]){
numberLabel.text = [NSString stringWithFormat:@"%@", [numbers objectAtIndex:r]];
}
如何從給我重複制止呢?提前
有什麼問題嗎? –
該代碼似乎以隨機順序創建一個數字1-90,沒有重複。你想要做什麼,它究竟在做什麼? – rmaddy
@rmaddy當我嘗試在標籤中顯示數字時,它給了我重複的數字,我使用以下命令來顯示int r = arc4random()%[numbers count]; if(r <[numbers count]){numberLabel.text = [NSString stringWithFormat:@「%@」,[numbers objectAtIndex:r]]; } –