OC学习----可变数组与不可变数组
来源:互联网 发布:程序员常用的工具 编辑:程序博客网 时间:2024/05/21 10:56
NSArray / NSMutableArray
在OC中,我们用 NSArray
类和 NSMutableArray
类来表示数组.其中, NSArray
类是 NSMutableArray
类的父类.在OC中,我们的数组是有序的 对象
的集合,即我们的数组只能存储 对象
.在OC中我们的数组中元素类型不能是 int
,float
,CGPoint
等类型.
NSArray(不可变数组)
1.初始化方法
//创建一个空不不可变的数组 NSArray *ary1 = [[NSArray alloc] init]; NSArray *ary2 = [NSArray array]; //创建一个里面只有一个元素的不可变数组 NSArray *ary3 = [NSArray arrayWithObject:@"abcdefg"]; //创建一个里面有多个元素的不可变数组 NSArray *ary4 = [NSArray arrayWithObjects:@"aa",@"bb",@"cc",@"dd",nil]; //新语法 NSArray *ary5 = @[@"abcdefg"];//与3等价 NSArray *ary6 = @[@"aa",@"bb",@"cc",@"dd"];//与4等价 NSArray *ary7 = [NSArray arrayWithArray:ary2]; //从本地文件中读取数组 NSArray *ary8 = [NSArray arrayWithContentsOfFile:@""]; //从网络文件中读取数组 NSArray *ary9 = [NSArray arrayWithContentsOfURL:[NSURL URLWithString:@""]];
2.数组元素个数
NSUInteger count = ary6.count;
3.访问数组元素
//访问ary6中的第一个元素 NSString *str = [ary6 objectAtIndex:0]; for (int i = 0; i < ary6.count; i++) { NSLog(@"数组中第%d个元素为:%@",i,[ary6 objectAtIndex:i]); }
4.通过数组中的元素找对应的下标
NSUInteger index = [ary6 indexOfObject:@"aa"]; NSLog(@"index = %lu",(unsigned long)index);
5.判断数组中是否存在某上元素
BOOL flag = [ary6 containsObject:@"bb"];
6.向不可变数组中增加一个元素,生成一个新的数组
NSArray *newAry = [ary6 arrayByAddingObject:@"ee"]; NSArray *newAry1 = [ary6 arrayByAddingObjectsFromArray:ary6]; NSString *string = [newAry componentsJoinedByString:@","]; NSArray *array = @[@"123",@"456",@"789",@"000"]; NSString *string1 = [array componentsJoinedByString:@"-"]; NSLog(@"%@",string1); NSArray *array1 = [string1 componentsSeparatedByString:@"-"]; NSLog(@"array = %@",array1); NSString *string2 = [array1 componentsJoinedByString:@""]; NSLog(@"%@",string2);
NSMutableArray(可变数组)
`NSMutableArray` 为 `NSArray` 的子类.
1.初始化方法
//初始化一个空的可变数组 NSMutableArray *mArray1 = [NSMutableArray array]; NSMutableArray *mArray2 = [NSMutableArray arrayWithObject:@"1"]; NSMutableArray *mArray3 = [NSMutableArray arrayWithObjects:@"1",@"2",@"3",@"4", nil]; NSMutableArray *mArray4 = [NSMutableArray arrayWithArray:mArray2]; //可变数组独有的初始化方法 NSMutableArray *mArray5 = [NSMutableArray arrayWithCapacity:10]; NSMutableArray *mArray6 = [NSMutableArray arrayWithContentsOfFile:@""]; NSMutableArray *mArray7 = [NSMutableArray arrayWithContentsOfURL:@""];
2.增加元素
//在数组的末尾增加一个元素 [mArray3 addObject:@"5"]; //在数组的指定位置增加一个元素 [mArray3 insertObject:@"yanshuxin" atIndex:3];
3.元素替换
//将数组指定位置上的元素替换成用户想要的元素 [mArray3 replaceObjectAtIndex:2 withObject:@"sb"];
4.元素交换
[mArray3 exchangeObjectAtIndex:1 withObjectAtIndex:4];
5.删除元素
//删除指定元素 [mArray3 removeObject:@"1"]; //删除指定位置上的元素 [mArray3 removeObjectAtIndex:2]; //删除数组中最后一个元素 [mArray3 removeLastObject]; //删除所有元素 [mArray3 removeAllObjects];
6.快速遍历
//for(类型 对象 in 集合) for (NSString *ele in mArray3) { NSLog(@"ele = %@",ele); }
1 0
- OC学习----可变数组与不可变数组
- OC中不可变数组与可变数组
- OC中不可变数组和可变数组的操作方法
- OC的不可变数组以及可变数组
- OC学习(五)不可变数组类,可变数组类及数值类
- OC语言 集合>>不可变数组(NSArray) 与 可变数组(NSMutableArray)
- OC 重点之NSArray(数组) NSDictionary不可变字典类与NSMutableDictionary 可变字典类 (概括)
- 数组:可变数组和不可变数组
- 可变VS不可变数组
- 不可变数组(NSArray)与可变数组(NSMutableArray)
- Object-c 基础 不可变数组与可变数组
- 不可变数组NSArray与可变数组NSMutableArray
- OC 中的数组方法(不可变数组NSArray 和 可变数组 NSMutableArray)
- OC 数组中的方法 (不可变数组NSArry 和可变数组 NSMutableArray)
- OC中的不可变数组
- 不可变数组NSArray和可变数组
- 可变数组和不可变数组
- 不可变数组转变为可变数组
- PopupWindow setOutsideTouchable 问题
- MySQL数据表的CRUD(増、删、改、查)操作
- Android: mediaplayer went away with unhandled events
- C++--String类型各种重载函数的实现
- the constructor AlertDialog.Builder(new View.OnClickListener() ) is undefined
- OC学习----可变数组与不可变数组
- Monkey常用命令详解
- Window及document对象
- 正则表达式30分钟入门教程
- 面试题—— 从尾到头打印链表
- 4pda.ru注册验证的解码算法
- C++ 字符串
- 【十二】记录
- 什么是TPS,什么是QPS,区别是什么?