//************** NSMutableArray及基本使用 **************
1、NSMutableArray介绍
NSMutableArray是NSArray的子类
NSArray是不可变的,一旦初始化完毕后,它里面的内容就永远是固定的,不能删除里面的元素, 也不能再往里面添加元素
NSMutableArray是可变的, 随时可以往里面添加\更改\删除元素
//创建空数组
NSMutableArray *arr = [NSMutableArray array];
//创建数组,并且指定长度为5,此时也是空数组
NSMutableArray *arr2 = [[NSMutableArray alloc] initWithCapacity:5];
//创建一个数组,包含两个元素
NSMutableArray *arr3 = [NSMutableArray arrayWithObjects:@"1",@"2", nil];
//调用对象方法创建数组
NSMutableArray *arr4 = [[NSMutableArray alloc] initWithObjects:@"1",@"2", nil];
- (void)addObject:(id)object; 添加一个元素
- (void)addObjectsFromArdObray:(NSArray *)array;
添加otherArray的全部元素到当前数组中
- (void)insertObject:(id)anObject atIndex:(NSUInteger)index;
在index位置插入一个元素
- (void)removeLastObject;
删除最后一个元素
- (void)removeAllObjects;
删除所有的元素
- (void)removeObjectAtIndex:(NSUInteger)index;
删除index位置的元素
- (void)removeObject:(id)object;
删除特定的元素
- (void)removeObjectsInRange:(NSRange)range;
删除range范围内的所有元素
- (void)replaceObjectAtIndex:(NSUInteger)index withObject:(id)anObject;
用anObject替换index位置对应的元素
- (void)exchangeObjectAtIndex:(NSUInteger)idx1 withObjectAtIndex:(NSUInteger)idx2;
交换idx1和idx2位置的元素
3、NSMutableArray 错误用法
NSMutableArray *array = @[@"bob", @"steve", @"john"];
[array addObject:@“Peter”];
// 错误,使用@[@"bob", @"steve", @"john"]这种方式创建的永 远是NSArray(不可变数组)
// 正确
NSMutableArray *array = [NSMutableArray arrayWithArray:@[@"bob", @"steve", @"john"]];
[array addObject:@"Peter"];
|