NSMutaleArray的基本使用

NSMutableArray基本用法
  • NSMutableArray是NSArray的子类
  • NSMutableArray是可变的,随时可以往里面添加、修改、删除元素
创建一个NSMutableArray
// 创建一个空数组
NSMutableArray *arrM1 = [NSMutableArray array];

// 创建数组,并且制定长度为10,也是空数组
NSMutableArray *arrM2 = [[NSMutableArray alloc] initWithCapacity:10];

// 创建一个数组,包含两个元素
NSMutableArray *arrM3 = [NSMutableArray arrayWithObjects:@"1", @"2", nil];
NSMutableArray *arrM4 = [[NSMutableArray alloc] initWithObjects:@"1", @"2", nil];
添加元素
[arrM1 addObject:@"2"];

// 将指定数组中的元素都取出来,放到arrM1中
// 并不是将整个数组当做一个元素添加到arrM1中
[arrM1 addObjectsFromArray:@[@"q", @"f"]];

// 下面这种方法是将整个数组当做一个元素添加到arrM1中
[arrM1 addObject:@[@"d", @"f"]];
插入元素
[arrM1 insertObject:@"cc" atIndex:1];

NSRange range = NSMakeRange(2, 2);
NSIndexSet *set = [NSIndexSet indexSetWithIndexesInRange:range];
// 插入一组数据,需要制定数组需要插入的位置和插入多少
[arrM1 insertObjects:@[@"111", @"bbb"] atIndexes:set];
获取元素
[arrM1 objectAtIndex:1];

arrM1[1];
替换元素
arrM1[0] = @"111";

// 替换index位置上的元素
[arrM1 replaceObjectAtIndex:1 withObject:@"tt"];

NSMutableArray *arrM = [NSMutableArray arrayWithObjects:@"1", @"2", @"3",@"4",@"5",@"6", nil];
// 替换range指定位置上的元素,将后面的数组中的元素逐个全部插入
[arrM replaceObjectsInRange:NSMakeRange(1, 2) withObjectsFromArray:@[@"q",@"d",@"r"]];
NSLog(@"%@",arrM);// 输出(1,q,d,r,4,5,6)
删除元素
// 删除index位置上的元素
[arrM1 removeObjectAtIndex:1];

// 删除最后一个元素
[arrM1 removeLastObject];

// 删除所有元素
[arrM1 removeAllObjects];

// 删除对应的元素
[arrM1 removeObject:@"111"];

// 删除range指定的元素
[arrM1 removeObjectsInRange:NSMakeRange(1, 1)];
交换元素
// 交换index为1和2位置上的元素
[arrM1 exchangeObjectAtIndex:1 withObjectAtIndex:2];
错误用法
// 使用@[]创建的是不可变数组NSArray
// 当调用NSMutableArray特有的方法的时候,将会出错
NSMutableArray *arrM = @[@"1",@"2",@"3"];
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容