1.NSArray是OC中用来保存对象的数组,NSArray在初始化完毕后不可以再添加或者删除里面的对象,也无法改变对象的顺序,甚至不能赋值,例如下面的赋值语句,编译器会出现错误提示Expected method to write array element not found on object of type 'NSArray *',NSArray的初始化放在方括号内,对象之间用逗号分隔,前方带有@符号。
NSArray *objList=@[@1,@2,@3];
objList[1]=@4;
2.另方法,最后一个对象必须是nil
NSArray *objList=[NSArray arrayWithObjects:@1,@2,@3,nil];
3.获取数组大小
NSLog(@"%ld",[objList count]);
4.获取数组元素
NSLog(@"%@",objList[0]);
NSLog(@"%@",[objList objectAtIndex:0]);
5.遍历数组,传统遍历和快速遍历
NSArray *objList=@[@1,@2,@3];
NSUInteger count=[objList count];
for (int i=0;i<count;i++){
NSLog(@"%@",objList[i]);
}
for (NSNumber *n in objList) {
NSLog(@"%@",n);
}
6.获取数组里第一个和最后一个对象
NSArray *objList=@[@1,@2,@3];
NSLog(@"%@",[objList firstObject]);
NSLog(@"%@",[objList lastObject]);
7.判断数组是否包含指定对象,该方法是通过调用对象的IsEqual方法来实现的
NSArray *objList=@[@1,@2,@3];
if ([objList containsObject:@4])
NSLog(@"%@",[objList firstObject]);
8.获取一个对象在数组内的最低索引,找不到则返回NSNotFound,原理和上面一样
NSArray *objList=@[@1,@2,@3];
NSLog(@"%ld",[objList indexOfObject:@1]);
9.NSMutableArray是NSArray的子类,可以删除,添加,插入对象,下面代码创建了一个空的NSMutableArray对象
NSMutableArray *objList=[NSMutableArray array];
10.添加对象
[objList addObject:@1];
[objList addObject:@2];
[objList addObject:@3];
11.插入对象
[objList insertObject:@4 atIndex:0];
12.删除对象,删除所有对象
[objList removeObjectAtIndex:0];
[objList removeAllObjects]
13.替换对象
[objList replaceObjectAtIndex:0 withObject:@4];