本文主要是介绍Foundation框架—数组 NSArray -NSMutableArray,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Foundation 框架初体验
_______________ NSArray 不可变数组 _______________
//不可变数组 OC的数组可以存储不同类型的对象 只能存储对象
//顺序的存储结构 可以遍历 每个元素占的内存空间是连续的
//注意点: 实例化的时候必须让对象进行赋值 因为它是不可变数组
//实例化 用逗号隔开
NSArray * array =[[NSArray alloc]initWithObjects:@”1”, @”2”, @”3”, @”4”, nil];
//数组长度
int count = (int)array.count;
//判断数组中是否有某个对象
BOOL isHave =[array containsObject:@”2”];
if(isHave){
NSLog(@”存在”);
}
else{
NSLog(@”不存在”);
}
//取出数组中 第一个元素
NSString *str = [array firstObject];
//取得数组中 最后一个元素
NSString *str2 = [array lastObject];
//取出数组中 下标为3的元素
NSString *str3 = [array objectAtIndex:3]; //0 ,1 ,2 ,3 取值为4
//打印元素对应的下标(如果元素不存在 则打印 -1 )
int index =(int)[array indexOfObject:@”3”]; //0,1,2(数值为3)下标为2
//数组的遍历(遍历:查看数组中的每一个元素)
//遍历的常用的两种方法:1.基本的for循环通过下标逐一取出查看 2. for in 快速枚举
//方法 1. for循环
for(int i = 0; i < array.count ;i++)
{
//取出数组中 下标为i的字符串 从0开始
NSString *str1 =[array objectAtIndex:i];
}
//方法 2. 快速枚举 for in (需要让数组中的元素类型保持一致,不一致会崩溃)
//在数组中 查找所有的字符串 每循环一次 找到一个 有序的(按照下标逐渐递增的,按照数组的首个元素,到末尾元素排布)
for(NSString *str in array) {
NSLog(@"str = %@",str);
}
_______________ NSMutableArray 可变数组 _______________
// 实例化的时候不需要让对象进行赋值 因为它是可变数组
NSMutableArray *array = [[NSMutableArray alloc]init];
//添加元素
[array addObject:p1];
//添加数组(会自动加入数组中的元素)
[array addObjectsFromArray:personArray];
//删除元素
//删除数组内 所有的元素
[array removeAllObjects];
//删除数组内 指定的元素
[array removeObject:p1];
//删除数组内 最后一个元素
[array removeLastObject];
//删除指定下标的元素
[array removeObjectAtIndex:2];//删除下标为2 第三个元素
//交换数组内元素的位置
[ array exchangeObjectAtIndex:0 withObjectAtIndex:1]; //将第一个和第二个元素交换
这篇关于Foundation框架—数组 NSArray -NSMutableArray的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!