文档章节

iOS NSMutableArray用法

 走向未来
发布于 2015/10/21 13:46
字数 293
阅读 1299
收藏 0
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        //NSMutableArray 可变数组 继承与 不可变NSArray
        //NSMutableArray可以用NSArray 的所有方法
        //创建一个可变数组对象
        NSMutableArray *arr = [[NSMutableArray alloc] initWithObjects:@"c",@"c",@"oc",@"ui",@"net", nil];
       
        //增add /insert  删remove  改 replace  exchange
        [arr addObject:@"qqqqqq"];//给数组增加元素
        NSLog(@"before:%@",arr);
        //在末尾增加一个元素
        //[arr addObject:@"project"];
        //在指定位置插入
        //[arr insertObject:@"project" atIndex:1];
        //[arr removeAllObjects];//删除所有
        //删除最后
        //[arr removeLastObject];
        //删除指定的索引的
        //[arr removeObjectAtIndex:0];
        //删除指定元素 有几个删几个
        //[arr removeObject:@"c"];
        
        //替换
        //[arr replaceObjectAtIndex:0 withObject:@"C"];
        [arr exchangeObjectAtIndex:0 withObjectAtIndex:3];
        
        NSLog(@"after:%@",arr);
        //可变空间 都会随着数据的增加而增加 减少而减少
        
        //快速枚举的时候 只能 读数组元素 不能改变数组
        
        /*
         快速枚举的时候,这时会有一个枚举器 和 当前数组建立一个关联,通过这个关联来遍历数组的,遍历时有个修改监视器(迭代器),监视这数组是否被修改了,如果一旦修改立即crash 崩溃掉
         */
        for (NSString *str in arr) {
            
            //[arr exchangeObjectAtIndex:3 withObjectAtIndex:4];
            //NSLog(@"%@",[arr objectAtIndex:0]);
        }
        
        
        
    }
    return 0;
}


© 著作权归作者所有

共有 人打赏支持
粉丝 6
博文 65
码字总数 22758
作品 0
郑州
如何对NSMutableArray进行KVO

本文是我首发在iOS知识小集团队的,欢迎关注微博话题#ios知识小集#。我的微博:halohily 我们知道,iOS 中 KVO (key-value-observing) 的原理,简单来说就是重写了被观察属性的 set 方法。自...

halohily
05/22
0
0
IOS加载图片imageNamed和imageWithContentsOfFile?

转: Apple官方的文档为生成一个UIImage对象提供了两种方法: 1. imageNamed,其参数为图片的名字; 2. imageWithContentsOfFile,其参数也是图片文件的路径。 那么两种有什么区别吗? 肯定是...

smail歇歇
2014/09/18
0
0
[C++][IO]fstream用法

fstream用法 1. 打开文件 在fstream类中,有一个成员函数open(),就是用来打开文件的,其原型是: void open(const char* filename,int mode,int access); 参数: filename:  要打开的文件...

guitar_zp
2011/08/09
0
0
iOS精美过度动画、视频会议、朋友圈、联系人检索、自定义聊天界面等源码

iOS精选源码 iOS 精美过度动画源码(http://www.code4app.com/thread-14827-1-1.html) iOS简易聊天页面以及容联云IM自定义聊天页面的实现思路(http://www.code4app.com/thread-30348-1-1.htm...

sunnyaigd
07/11
0
0
iOS基础深入补完计划--NSURLSession使用详解(附Demo)

目录 前言 API Demo 前言 本文主要是把NSURLSession以及NSURLSessionTask相关的代理方法全部整理了一下。 旨在大体了解在一个iOS网络请求中、一个任务究竟经理了什么。 而我们、又能做些什么...

kirito_song
05/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何通过 J2Cache 实现分布式 session 存储

做 Java Web 开发的人多数都会需要使用到 session (会话),我们使用 session 来保存一些需要在两个不同的请求之间共享数据。一般 Java 的 Web 容器像 Tomcat、Resin、Jetty 等等,它们会在...

红薯
今天
3
0
C++ std::thread

C++11提供了std::thread类来表示一个多线程对象。 1,首先介绍一下std::this_thread命名空间: (1)std::this_thread::get_id():返回当前线程id (2)std::this_thread::yield():用户接口...

yepanl
今天
3
0
Nignx缓存文件与动态文件自动均衡的配置

下面这段nginx的配置脚本的作用是,自动判断是否存在缓存文件,如果有优先输出缓存文件,不经过php,如果没有,则回到php去处理,同时生成缓存文件。 PHP框架是ThinkPHP,最后一个rewrite有关...

swingcoder
今天
1
0
20180920 usermod命令与用户密码管理

命令 usermod usermod 命令的选项和 useradd 差不多。 一个用户可以属于多个组,但是gid只有一个;除了gid,其他的组(groups)叫做扩展组。 usermod -u 1010 username # 更改用户idusermod ...

野雪球
今天
3
0
Java网络编程基础

1. 简单了解网络通信协议TCP/IP网络模型相关名词 应用层(HTTP,FTP,DNS等) 传输层(TCP,UDP) 网络层(IP,ICMP等) 链路层(驱动程序,接口等) 链路层:用于定义物理传输通道,通常是对...

江左煤郎
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部