IOS第四天(3:数组的排序和乱序)

数组的升序和降序

- (void)sortWith:(NSArray *)array
{
    // 排序
    array = [array sortedArrayUsingComparator:^NSComparisonResult(NSNumber *num1, NSNumber *num2) {
        
        /**
         1 4 5 2
         4 1 5 2
         4 1 5 2
         5 4 1 2
         5 4 1 2
         5 4 2 1
         */
        NSLog(@"%@ %@", num1, num2);
        
        // 升序
        //        return [num1 compare:num2];
        // 降序
        return [num2 compare:num1];
    }];
    
    NSLog(@"%@", array);
}

 

乱序

    
    // 块代码
    NSArray *array = @[@(1), @(2), @(3), @(4), @(5)];
    
    // 排序
    array = [array sortedArrayUsingComparator:^NSComparisonResult(NSNumber *num1, NSNumber *num2) {

        // 乱序=>一会升序,一会降序
        // 随机
//        arc4random_uniform(10) => 0~9之间的随机数
        int seed = arc4random_uniform(2);
        if (seed) {
            return [num1 compare:num2];
        } else {
            return [num2 compare:num1];
        }
    }];
    
    NSLog(@"%@", array);

 

posted @ 2015-07-27 15:01  iso  阅读(905)  评论(0编辑  收藏  举报