- 特点:
- 只能存储OC对象 不能存储非OC对象
- 长度不固定,元素可以动态的新增和删除
- 元素的类型仍然是id类型的
- 每1个元素是紧紧的挨着
- 创建NSMutableArray
NSMutableArray *arr = [NSMutableArray array];
这时候 创建的arr对象 是有意义的,因为这个对象是可变的
当然也可以这样创建:
NSMutableArray *arr1 = [NSMutableArray arrayWithObjects:@"jack",@"rose",@"lili", nil];
数组的使用
- 新增元素
NSMutableArray *arr = [NSMutableArray array];
[arr addObject:@"jack"];
[arr addObject:@"rose"];
- 将另外1个数组中得每1个元素新增到可变数组
NSArray *array = @[@"jack",@"rose"];
NSMutableArray *arr = [NSMutableArray array];
[arr addObjectsFromArray:array];
NSLog(@"%@",arr);
将元素插入到指定的下标处
NSArray *array = @[@"jack",@"rose"];
NSMutableArray *arr = [NSMutableArray array];
[arr addObjectsFromArray:array];
NSLog(@"%@",arr);
[arr insertObject:@"lilei" atIndex:1];
NSLog(@"%@",arr);
删除
- (void)removeAllObjects; 删除所有的元素.
- (void)removeLastObject; 删除最后1个元素.
- (void)removeObject:(id)anObject; 删除数组中所有和传入的元素相同的元素.
- (void)removeObjectAtIndex:(NSUInteger)index; 根据下标来删除.
- (void)removeObject:(id)anObject inRange:(NSRange)range; 删除指定范围中的元素.
- (void)removeObjectsInRange:(NSRange)range; 删除1段范围.