Objective c xcode上的随机数无重复循环生成器

Objective c xcode上的随机数无重复循环生成器,objective-c,arc4random,Objective C,Arc4random,我知道这是个新手问题,但我真的需要一些帮助。我试图在Xcode上为四个数字创建一个带有integer临时数组的while循环。在每个循环中,我都要检查前一个数字,并将其存储到我的表中,直到这四个数字填满为止。我要随机化的数字介于2-5之间以下是我的想法: ans= arc4random()%4+2; seq[]=ans; counter=+1 while (uniq==true) { ans

我知道这是个新手问题,但我真的需要一些帮助。我试图在
Xcode
上为四个数字创建一个带有
integer
临时数组的while循环。在每个循环中,我都要检查前一个数字,并将其存储到我的表中,直到这四个数字填满为止。我要随机化的数字介于
2-5
之间

以下是我的想法:

ans= arc4random()%4+2;

            seq[]=ans;
            counter=+1
            while (uniq==true) {
                ans=arc4random()%4+2;
            }
            Uniq=true
            for(int i=0; I <4; i++)
            If (ans=seq[i]){
            Uniq==false

            Seq[counter=ans]
                Counter++}
ans=arc4random()%4+2;
seq[]=ans;
计数器=+1
while(uniq==true){
ans=arc4random()%4+2;
}
Uniq=true
对于(int i=0;i请尝试此选项:(*未编译选中)


2,3,4,5是您想要随机选取的列表吗?是的,这就是为什么我从ans=arc4random()开始%4+2;然后我要检查第一个结果,然后继续下一个数字,直到它填满整个数组。@user2437643您实际上想在这里完成什么?如果您想要以随机顺序排列数字2-5,则将它们洗牌会更有效。只需将它们放入NSMutableArray中,然后使用is:我不敢相信还没有人标记这个复制品--这个问题大约每两周出现一次。更正了明显的错误,因为我不使用它,所以不确定是否可以添加带有
[]
的项。@Sulthan:您可以添加:)如果索引超出范围,则会添加一个新的索引
mArray[mArray.count]
是我想要使用的。即使你的编辑也很好,同样:)。哦,对不起。缺少
,因此我只选择了一个解决方案:)感谢您的回复。从这个mArray中,我怎样才能提取标签上的随机序列?在我的previus代码中,我使用了这样的标准数字。answer1.text=[nsstringwithutf8string:(char*)sqlite3\u column\u text(sqlStatement,3)]@user2437643:marray包含随机序列,您可以从该数组中获取值。
NSMutableArray *array = [NSMutableArray arrayWithArray:@[@"2", @"3", @"4", @"5"]];
NSMutableArray *mArray = [NSMutableArray new];

while (array.count > 0) {
    NSUInteger index = arc4random() % array.count;
    mArray[mArray.count] = array[index];
    [array removeObjectAtIndex:index];
}