根据一个整齐的数据,随机的得到一个新的数组,可指定数组元素出现的位置
+ (NSArray *)getRandomWithPosition:(NSInteger)position positionContent:(id)positionContent array:(NSArray *)baseArray { NSMutableArray *resultArray = [NSMutableArray arrayWithCapacity:baseArray.count]; NSMutableArray *tempBaseArray = [NSMutableArray arrayWithArray:baseArray]; while ([tempBaseArray count]) { NSInteger range = [tempBaseArray count]; id string = [tempBaseArray objectAtIndex:arc4random()%range]; [resultArray addObject:string]; [tempBaseArray removeObject:string]; } // 计算指定数组元素在新数组中的位置 NSUInteger index = [resultArray indexOfObject:positionContent];
// 交换数组元素 [resultArray exchangeObjectAtIndex:index withObjectAtIndex:position]; return resultArray; }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。