OC总结-数组和集合
来源:互联网 发布:otdr自动生成软件 编辑:程序博客网 时间:2024/06/05 15:31
一、oc中的数组:NSArray
定义:
NSArray *arrayName=[NSArray arrayWithObjects:obj1,obj2,obj3,obj4,nil];//数组是以nil空作为结束的标志
使用:
for(int i=0;i<4;i++)
{
Object *obj=[arrayName objectAtIndex:i];
[obj functionName];
}
例如:
//数组的使用
//定义四个Student类型的变量 并初始化
Student *stu1=[StudentstudentWithName:@"唐僧"andSex:YESandAge:23andAddress:@"大唐"];
Student *stu2=[StudentstudentWithName:@"悟空"andSex:YESandAge:23andAddress:@"花果山"];
Student *stu3=[StudentstudentWithName:@"八戒"andSex:YESandAge:23andAddress:@"高老庄"];
Student *stu4=[StudentstudentWithName:@"沙僧"andSex:YESandAge:23andAddress:@"流沙河"];
//数组的定义和初始化(数组是以nil空作为结束的标志的)
NSArray *students=[NSArrayarrayWithObjects:stu1,stu2,stu3,stu4,nil];//定义一个数组名为 students元素类型全部为Student 元素个数为4的数组
//利用for循环使用数组中的元素
for (int i=0; i<4; i++) {
//根据数组的索引取出相应的对象
Student *stu=[students objectAtIndex:i];
//调用取出对象的sayHi方法
[stusayHi];
}
//数组中的元素可以是多种类型
//数组元素不能存放基本的数据类型(如int float..)
//如果存放基本数据类型,要把它先转换成NSNumber的对象 例如:
NSArray *arrays=[NSArrayarrayWithObjects:stu1,@"张三",[NSDate date], [NSNumbernumberWithInt:20],nil];//定义了一个名为array的数组,该数组中包含4个元素,分别为Student、String、Date、Number类型
//注意:在打印引用型对象是,默认的是打印类的类型和内存地址,在.m文件中改写description方法(相当于java中的toString方法),可以改变其输出形式 在.m文件中改写后的description方法
/** 在.m文件中重写后的description方法 [不用在.h文件中定义接口
]
//重写description方法 相当于java中的toString方法
-(NSString *)description//重写description方法后,让其输出姓名(也可以是其他自定义的字符串等)
{
returnname;
}
*/
//包含不同类型的数组的使用
for (int i=0; i<4; i++) {
//根据数组的索引取出相应的对象
id arry=[arraysobjectAtIndex:i];//id为泛型 是指任意类型的对象 定义id泛型对象时不在变量前加*
//直到赋值的时候才确定是什么类型
NSLog(@"%@",arry);
}
NSLog(@"for-in的使用");
//for-in 的使用和java中的一样,循环的次数依赖与数组元素的个数
for (id tempin arrays) {
NSLog(@"%@",temp);
}
//NSArray的子类NSMutableArray为可变的数组 可以进行增删改查
// NSMutableArray *mArray=[[NSMutableArray alloc]init];
NSMutableArray *mArray=[NSMutableArrayarrayWithObjects:stu1,@"aaa",@"abc",nil];
// //NSMutableArray是可变数组,是NSArray的子类,里面的元素可以增删改查
NSLog(@"数组的长度%ld",[mArray count]);//输出数组的长度(元素的个数)调用count方法,采用长整型站位符
//向数组中添加元素
[mArrayaddObject:@"cccc"];
[mArray addObject:[NSNumbernumberWithBool:YES]];
NSLog(@"添加后的数组元素");
NSLog(@"%@",mArray);
//删除数组中的元素
[mArray removeObjectAtIndex:0];//删除下标为0的元素即第一个元素
NSLog(@"删除第一个元素后的数组元素");
NSLog(@"%@",mArray);
//注:按住windows键和鼠标左键可以查看类的.h文件,以便于我们更加清楚的了解该类中的方法,更好的使用该类
//NSMutableArray中的扩展方法
// - (void)addObject:(id)anObject;
// - (void)insertObject:(id)anObject atIndex:(NSUInteger)index;
// - (void)removeLastObject;
// - (void)removeObjectAtIndex:(NSUInteger)index;
// - (void)replaceObjectAtIndex:(NSUInteger)index withObject:(id)anObject;
二、集合的使用
集合中只能存放对象类的元素,要想存放基本数据类型的元素,要先将其转换为对象类再进行存放,集合中存放的数据元素可以是不同类型的和数组一样
Set集合
//Set集合
//定义和初始化
NSSet *set=[NSSetsetWithObjects:@"aa",@"bb",@"cc",nil];
//set集合中的元素是无序的唯一存在的 相互独立的长度是不可变的
//set集合的使用
NSLog(@"%@",set);
NSLog(@"%@",[setanyObject]);//取出set里面的所有元素
//Set集合的子类NSMutableSet类似于Array的子类是可变长度的集合 也可以增加删除元素
//按住windows键和鼠标左键可以查看其中定义的方法来进行使用
0 0
- OC总结-数组和集合
- OC中的数组、字典和集合解析
- oc语法特性-数组及集合
- OC数组字典集合
- OC--数组、字典、集合
- OC-集合类(数组)
- 数组和集合小总结
- OC-NSnumber和NSvalueNSNULL以及集合数组优化写法
- ❀自我唠嗑OC-集合遍历和数组排序
- iOSDay16之OC集合遍历和数组排序
- iOS之OC集合遍历和数组排序
- oc 集合容器总结+扩展名的添加和获取
- OC字典(NSDictionary)和集合(NSSet)的总结
- OC-集合1(数组)
- OC中的数组、字典、集合
- OC - 第五章 集合 ( 数组、字典、集合 )
- java集合和数组的排序总结
- json数组和List集合转换总结
- C++的链接依赖是平面式的
- 欢迎使用CSDN-markdown编辑器
- 机器学习算法的R语言实现(二):决策树算法
- nvl函数用法
- 查看触摸屏报点率
- OC总结-数组和集合
- 关于scanf()函数的细节
- 量测一下手按下TP到INT 信号发生的时间
- 机器学习算法的R语言实现(三):朴素贝叶斯分类器
- String Matching -- Brute Force + Rabin-Karp + KMP
- Binary Tree Inorder Traversal
- Oralce 11g R2 Dataguard数据库配置2014100302
- 经典:小明趣解什么叫网关?
- ubuntu12 root账户自动登录