先上代码:
#pragma mark - 乱序排列
- (NSArray *)randomArray {
// 随机数从这里边产生
NSMutableArray *startArray = [[NSMutableArray alloc] initWithObjects:@0, @1, @2, @3, @4, @5, @6, @7, nil];
// 随机数产生结果
NSMutableArray *resultArray = [[NSMutableArray alloc] initWithCapacity:0];
// 随机数个数
NSInteger count = 8;
for (int i = 0; i < count; i++) {
int t = arc4random()%startArray.count;
resultArray[i] = startArray[t];
startArray[t] = [startArray lastObject]; // 只是乱序,保证了数据不会重复
[startArray removeLastObject];
}
return resultArray;
}
初始化resultArray 的时候建议使用 initWithCapacity 方法,这样做的好处:初始化使用 initWithCapacity 的作用