NSArray数组随机排序

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];

}


 //数组随机排序

    NSArray *array = @[@"1",@"2",@"3",@"4",@"5"];

        NSMutableArray *nutableArray = [[NSMutableArray alloc]initWithArray:array];

        

        int i = (int)[nutableArray count];

        

        while(--i > 0) {

            

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

            

            [nutableArray exchangeObjectAtIndex:i withObjectAtIndex:j];

            

        }

    NSLog(@"nutableArray :%@",nutableArray);


猜你喜欢

转载自blog.csdn.net/wakice/article/details/70886267
今日推荐