Objective-C学习笔记-NSArray与NSMutableArray

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];

猜你喜欢

转载自www.cnblogs.com/Potato-Eater/p/9624332.html
今日推荐