NSMutableArray(可变数组)
NSMutableArray
为NSArray
的子类,即上述使用API对于可变数组来讲都适用
1.初始化方法
NSMutableArray *mArray1 = [NSMutableArray array];
NSMutableArray *mArray2 = [NSMutableArray arrayWithObject:@"1"];
NSMutableArray *mArray3 = [NSMutableArray arrayWithObjects:@"1",@"2",@"3",@"4", nil];
NSMutableArray *mArray4 = [NSMutableArray arrayWithArray:mArray2];
//可变数组独有的初始化方法
NSMutableArray *mArray5 = [NSMutableArray arrayWithCapacity:10];
NSMutableArray *mArray6 = [NSMutableArray arrayWithContentsOfFile:@""];
NSMutableArray *mArray7 = [NSMutableArray arrayWithContentsOfURL:[NSURL URLWithString:@""]];
2.操作
//增加
//在数组的末尾增加一个元素
[mArray3 addObject:@"5"];
//在数组的指定位置增加一个元素
[mArray3 insertObject:@"vincent" atIndex:3];
//替换,将数组指定位置上的元素替换成用户想要元素
[mArray3 replaceObjectAtIndex:2 withObject:@"sb"];
//交换,将数组指定位置上的两个元素交换位置
[mArray3 exchangeObjectAtIndex:1 withObjectAtIndex:4];
//删除
//删除指定元素
[mArray3 removeObject:@"1"];
//删除指定位置上的元素
[mArray3 removeObjectAtIndex:2];
//删除数组中最后一个元素
[mArray3 removeLastObject];
for (NSString *ele in mArray3) {
NSLog(@"ele = %@",ele);
}
//删除数组中所有元素
[mArray3 removeAllObjects];
3.数组的遍历
//快速枚举
NSMutableArray *marray = [NSMutableArray arrayWithObjects:@"1",@"2",@"3",@"4",@"5",@"6", nil];
for (NSString *element in marray) {
NSLog(@"element = %@",element);
}
//使用系统提供的枚举类 NSEnumerator
NSEnumerator *enumerator = [marray objectEnumerator];
NSString *ele;
while (ele = [enumerator nextObject]) {
NSLog(@"ele = %@",ele);
}
note
:当遍历可变数组时,不可修改可变数组