zoukankan      html  css  js  c++  java
  • NSArray常用方法、排序及乱序

    #import "ViewController.h"
    
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad
    {
        [super viewDidLoad];
    
        // 数组的排序
        // 1. 定义一个数字数组
        NSArray *array = @[@(1), @(2), @(3), @(4), @(5), @(6), @(7), @(8), @(9)];
        
        // 2. 对数组进行排序
        NSArray *result = [array sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
            
            NSLog(@"%@ ~ %@", obj1, obj2);
            
            if (arc4random_uniform(2) == 0) {
                return [obj2 compare:obj1];
            } else {
                return [obj1 compare:obj2];
            }
        }];
        
        NSLog(@"%@", result);
    }
    
    #pragma mark - NSArray 常用方法
    #pragma mark 数组排序方法(倒序)
    - (void)arraySort2
    {
        // 数组的排序
        // 1. 定义一个数字数组
        NSArray *array = @[@(3), @(5), @(4), @(2), @(1)];
        
        // 2. 对数组进行排序
        NSArray *result = [array sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
            
            NSLog(@"%@ ~ %@", obj1, obj2);
            
            return [obj2 compare:obj1];
        }];
        
        NSLog(@"%@", result);
    }
    
    #pragma mark 数组排序方法(正序)
    - (void)arraySort
    {
        // 数组的排序
        // 1. 定义一个数字数组
        NSArray *array = @[@(3), @(5), @(4), @(2), @(1)];
        
        // 2. 对数组进行排序
        NSArray *result = [array sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
            
            NSLog(@"%@ ~ %@", obj1, obj2);
            
            return [obj1 compare:obj2];
        }];
        
        NSLog(@"%@", result);
    }
    
    #pragma mark 数组常用方法
    - (void)testArray
    {
        // 1. 定义一个顺序的NSNumber的数组
        NSMutableArray *array = [NSMutableArray arrayWithCapacity:4];
        [array addObject:@(1)];
        [array addObject:@(2)];
        [array addObject:@(3)];
        [array addObject:@(4)];
        
        // 2. 删除其中第二(1)项
        [array removeObjectAtIndex:1];
        
        // 3. 在第三(2)个索引位置插入一个数字5
        [array insertObject:@(5) atIndex:2];
        
        // 4. 将第一(0)项和第三(2)项进行交换
        [array exchangeObjectAtIndex:0 withObjectAtIndex:2];
        
        NSLog(@"%@", array);
    }
    
    @end
  • 相关阅读:
    wordpress通过$wpdb获取一个分类下所有的文章
    WordPress的摘要显示方式
    WordPress简洁的SEO标题、关键词和描述
    WordPress获取特色图像的链接地址
    WordPress的Bootstrap面包屑导航
    destoon 6.0 手机站支持在所有浏览器访问
    dede织梦5.7的安全防护设置
    WordPress主题制作:基础样式文件
    LInux常用到的命令(面试)
    1030 完美数列 (25分) PAT-B
  • 原文地址:https://www.cnblogs.com/HJiang/p/4279547.html
Copyright © 2011-2022 走看看