C语言中数组只能存放一种类型
OC语言中数组可以存放多种类型,但是只能是对象类型,不可以是基本类型
我们实际中最好在一个数组中只存放一种类型的元素
nil表示数组的结尾,所以我们不能填写值为nil的对象
提前定义三个对象
Person *p1 =[[Person alloc]init];
Person *p2 =[[Person alloc]init];
Person *p3 =[[Person alloc]init];
NSArray
创建一个不可变数组
NSArray *array =@[p1,p2,p3];
数组的元素个数
NSLog(@"%ld",array.count);
根据索引查找对象
Person *p4 =[array objectAtIndex:0];
查找第一个或者最后一个对象
Person *p5 =[array lastObject];
Person *p6 =[array firstObject];
快速循环
for (Person *p in array){
}
获取一个对象的索引值
NSInteger index = [array indexOfObject:p1];
判断是否包含某个数组
if ([array containsObject:p1]) {
}
NSMutableArray
创建一个可变的数组
NSMutableArray *mArray =[NSMutableArray arrayWithCapacity:0];
添加元素
[mArray addObject:p1];
[mArray addObject:p2];
[mArray addObject:p3];
插入元素
[mArray insertObject:p1 atIndex:0];
交换两个元素
[mArray exchangeObjectAtIndex:0 withObjectAtIndex:1];
删除元素
[mArray removeObject:p1];
[mArray removeObjectAtIndex:0];
清空元素
[mArray removeAllObjects];