我生成随机整数,将它们放在NSNumber中并将它们保存在我的数组中。现在我怎么说"当数字已经在我的数组中时,返回并获得一个新数字?"
iD = arc4random() %50;
idnumber = [NSNumber numberWithInt:iD];
if ([idarray containsObject:idnumber])
{
NSLog(@"id is in array");
//go back
}else{
NSLog(@"id is not in array");
[idarray addObject:idnumber];
//do something
}
感谢您的回答并抱歉我的英语不好。
答案 0 :(得分:1)
这是对do/while
循环的好用:
if (idarray.count < 50) {
NSInteger value;
do {
value = arc4random_uniform(50);
} while ([idarray containsObject:@(value)]);
[idarray addObject:@(value)];
}
还要注意arc4random_uniform
的使用和现代拳击语法的使用。