NSMutableArray (可變數(shù)組)繼承NSArry(不可變數(shù)組)
1.創(chuàng)建對象的方式
1.1初始化方式
NSMutableArray *array = [[NSMutableArray alloc]initWithCapacity:10];
1.2遍歷構造器
NSMutableArray *array1 =[NSMutableArray arrayWithCapacity:10];
1.3字面量
NSMutableArray *array2 =[@[@"aa",@"bb"]mutableCopy];
2.添加元素
2.1直接添加元素
[array addObject:@"zhangsan"];
NSLog(@"array = %@",array);// array = zhangsan
[array addObject:@"wangwu"];
NSLog(@"array = %@",array);
/*array = (
zhangsan,
wangwu
)
*/
2.2指定位置交通添加
//在下標是1的地方添加zhaoliu
[array insertObject:@"zhaoliu" atIndex:1];
NSLog(@"array = %@",array);
/*數(shù)組是從0開始算起
array = (
zhangsan,
zhaoliu,
wangwu
)
*/
//在下標是3的地方添加zhangsan
[array insertObject:@"zhangsan" atIndex:3];
NSLog(@"array = %@",array);
/*(
zhangsan,
zhaoliu,
wangwu,
zhangsan
)*/
3.刪除
3.1移除所有zhangsan的元素
[array removeObject:@"zhangsan"];
NSLog(@"array = %@",array);
/*(
zhaoliu,
wangwu
)*/
3.2移除下標是1的元素
[array removeObjectAtIndex:1];
NSLog(@"array = %@",array);
/*(
zhaoliu
)*/
3.3移除最后一個元素
[array removeLastObject];
3.4//移除所有元素(刪除后數(shù)組為空)
[array removeAllObjects];
給數(shù)組添加元素
[array addObject:@"zhangsan"];
[array addObject:@"lisi"];
[array addObject:@"wangwu"];
[array addObject:@"zhangsan"];
NSLog(@"array = %@",array);
/*array = (
zhangsan,
lisi,
wangwu,
zhangsan
)*/
3.4移除某一個范圍
[array removeObjectsInRange:NSMakeRange(1,3)];
NSLog(@"array = %@",array);
/*array = (
zhangsan
)*/
//移除某一個范圍后面的元素
//[array removeObject:@"zhangsan"inRange:NSMakeRange(1, 3)];
給數(shù)組添加元素
[array addObject:@"lisi"];
[array addObject:@"wangwu"];
[array addObject:@"zhaoliu"];
NSLog(@"array = %@",array);
/*array = (
zhangsan,
lisi,
wangwu,
zhaoliu
)*/
4.交換指定位置上的兩個元素
[array exchangeObjectAtIndex:0 withObjectAtIndex:2];
NSLog(@"array1 = %@",array);
/* (
wangwu,
lisi,
zhangsan,
zhaoliu
)*/
5.替換數(shù)組中的一個元素
[array replaceObjectAtIndex:3 withObject:@"xueren"];
NSLog(@"array2 = %@",array);
/* (
wangwu,
lisi,
zhangsan,
xueren
)*/
For循環(huán)里面不允許去更改數(shù)組的長度,但是移除最后一個元素不影響數(shù)組的運行
//如果刪除lisi 數(shù)組的長度就會改變從而崩潰
for (NSString *str in array) {
if ([str isEqualToString:@"xueren"]) {
[array removeObject:@"xueren"];
}
}
NSLog(@"%@",array);
/*(
lisi,
zhaoliu
)*/