NSArray数组随机排序

NSArray和NSMutableArray的区别是前者是不可变数组,一旦数组初始化完成以后,就只能对数组进行查询操作,而后者是可变数组,数组初始化完成以后,继而可以进行增、删、改、查操作。所以对于数组的乱序排序,必须要在可变数组中进行操作。具体代码如下:

//数组随机排序

- (NSMutableArray *) randomizedArrayWithArray:(NSArray *)array {

    NSMutableArray *results = [[NSMutableArrayalloc]initWithArray:array];

    int i = [results count];

    while(--i > 0) {

        int j = rand() % (i+1);

        [results exchangeObjectAtIndex:i withObjectAtIndex:j];

    }

    return [results autorelease];

}

原文地址:https://www.cnblogs.com/yuanyuandachao/p/3684143.html