• NSArray NSMutableArray 常用方法


    创建NSArray
    构造方法
    [[NSArray alloc] init];
    [[NSArray alloc] initWithObjects:(nonnull id), ..., nil];
    [[NSArray alloc] initWithArray:(nonnull NSArray *)];
    [NSArray alloc] initWithObjects:(const id  _Nonnull __unsafe_unretained *) count:(NSUInteger)
     
    类工厂方法
    [NSArray array];
    [NSArray arrayWithObjects:(nonnull id), ..., nil];
    [NSArray arrayWithArray:(nonnull NSArray *)];
    [NSArray arrayWithObjects:(const id  _Nonnull __unsafe_unretained *) count:(NSUInteger)]
     
    创建一个数组( 推荐写法)
    NSArray *array = @[对象1, 对象2, 对象3, . . .  ];
     
    count 获取元素的个数
    firstObject 获取第0个元素
    lastObject 获取最后一个元素
    objectAtIndex: 获取指定位置的元素
    indexOfObject:获取指定对象在数组中的位置, 如果数组中没有指定对象, 那么就返回NSNotFound.
    containsObject:判断数组中是否包含某个对象(返回 BOOL)
     
    遍历
    1 forin
    2 迭代器
         obj: 当前获取到的元素
         idx:
    当前获取到的元素的索引
         stop: 标记是否需要停止循环
     
    对整型可以通过 sortedArrayUsingComparator:方法进行并轨排序
    eg NSArray *res = [array sortedArrayUsingComparator:^NSComparisonResult(id  _Nonnull obj1, id  _Nonnull obj2) {
            return obj1 < obj2;
        }];
     
    只要将对象放入数组之后, 就可以利用数组统一的给数组中所有的对象发送消息
    [arr makeObjectsPerformSelector:@selector(method)];
     
    字符数组与字符串的相互转换
    NSString *string = [array componentsJoinedByString:@“xxx”];(各数组对象以 xxx连接)
    NSArray *array = [string componentsSeparatedByString:@“x”];(字符串以符号'x’分割为字符串后放入数组中)
     
    arrayWithContentsOfFile:从路径读取
     

    NSMutableArray
    增加[array addObject:@"xxx"];
    插入[array insertObject:@"xxx" atIndex:idx];
    修改[array replaceObjectAtIndex:0 withObject:@“xxx"];
    快速修改 array[idx] = @"xxx”;(推荐写法)
    删除[array removeObject:@“xxx"];
        [array removeObjectAtIndex:2];
     
    获取
    [array objectAtIndex:idx]
    [array indexOfObject:idx]
    [array firstObject]
    [array lastObject]
    array[0];
  • 相关阅读:
    Swing程序最佳架构设计—以业务对象为中心的MVC模式(转)
    股市投资策略总结(转)
    php学习笔记--高级教程--读取文件、创建文件、写入文件
    史上最简单的Hibernate入门简单介绍
    Java中StringBuilder的清空方法比較
    DHCP Option 60 的理解
    ICMP报文分析
    软件測试自学指南---从入门到精通
    Qt多线程学习:创建多线程
    Bulk Insert命令具体
  • 原文地址:https://www.cnblogs.com/fangweiyi/p/5299634.html
Copyright © 2020-2023  润新知