OC 数组中的方法 (不可变数组NSArry 和可变数组 NSMutableArray)
2014-08-08 20:34
387 查看
1.数组的价值:
存储多个元素. (2)存储的元素只能是对象,对象可以是不同类型的. (3)数组是一个有序的集合. (4)数组中的元素可以重复,而且重复的对象会成为数组元素.
创建数组对象,
1.1使用便利构造器:关键词arrayWithObjects
arrayWithObjects 创建对象时可以指定多个对象元素,元素与元素之间通过逗号进行间隔.
nil 作为数组元素存放的结束标志.遇到nil之后,之后的元素都不会放入数组中,
例如 NSArray * arr = [NSArray arrayWithObjects : 在此处添加字符串对象 , 以nil 结束];
1.2使用初始化方法.关键词initWithObjects
NSArray *arr2 = [[NSArray alloc] initWithObjects : 在此处添加字符串对象 , 以nil 结束];
2.NSArray方法
2.1 获取元素个数。关键字词是count
例如: NSUInteger count = [arr2 count];
NSLog(@"%lu", count);
2.2根据索引值获取对象。
2.2.1获取指定下标对应的元素 .关键词是objectAtIndex:
例如: NSString *str = [arr2 objectAtIndex:0];
NSLog(@"str = %@", str);
2.2.2获取数组中的第一个元素 .关键词是firstObject
例如:NSString *firstObject = [arr2 firstObject];
NSLog(@"firstObject = %@", firstObject);
2.2.3获取数组中的最后一个元素 关键词是lastObejct
NSString *lastObejct = [arr2 lastObject];
NSLog(@"lastObejct = %@", lastObejct);
2.2.4 获取对象在数组中的索引值。关键词是indexOfObject
NSUInteger index = [arr2 indexOfObject:@"dd"];
NSLog(@"index = %lu", index);
2.2.5 判断是否包含某个对象 关键词是containsObject
例如:BOOL isExist = [arr2 containsObject:@"dd"];
NSLog(@"isExist = %d", isExist);
2.2.6数组排序(幼儿版) 关键词是sortedArrayUsingSelector
例如: NSArray *sortArr = [arr2 sortedArrayUsingSelector:@selector(compare:)];
NSLog(@"sortArr = %@", sortArr);
2.2.7 快速遍历(快速枚举) 使用 forin
注意forin是用于将集合中的元素遍历出来.
for (type *object in collection) {
statements
}
forin的中 type数组中元素的类型. object 起一个对象的名字(自己拟定的) . collection :集合(也就是大容器,数组,字典,或者集合)
例如 for (int i = 0; i < [arr2 count]; i++) {
NSString *str = [arr2 objectAtIndex:i];
NSLog(@"%@", str);
}
3. NSMutableArray 方法
3.1创建数组对象
3.1.1利用便利构造器 例如 NSMutableArray *arr = [NSMutableArray arrayWithObjects: 在此处添加数组对象 , 以nil 结束];
3.1.2使用初始化方法 例如
NSMutableArray *arr1 = [[NSMutableArray alloc] initWithObjects: 在此处添加数组对象 , 以nil 结束];
3.2 给数组添加对象 关键字是addObject
例如 Book *book= [[Book alloc] initWithName:@"iOS高高级编程" author:@"Frank" price:300];
[arr addObject:book];
3.3删除数组中的一个对象 关键词是removeObjectAtIndex
例如 [arr removeObjectAtIndex:0];
3.4查找数组中的对象 关键词isEqualToString
用forin 获取到数组中的元素,然后对比名字,如果相同就输出名字.
例如 for (Book *book in arr) {
if ([[book name] isEqualToString:@"iOS高级编程"]) { NSLog(@"查找成功");
}
}
3.5输出数组中所有对象 用forin
例如 输出书籍清单(书名
for (Book *book in arr) {
NSLog(@"%@", [book name]);
}
注意:如果想一次性输出数组所有内容则要重写从父类继承过来的description方法
当打印该类的对象时,系统会自动调用该方法.
例如- (NSString *)description
{
return [NSString stringWithFormat:@"%@ %@ %g", _name, _author, _price];
}
%g可以忽略无用的0
存储多个元素. (2)存储的元素只能是对象,对象可以是不同类型的. (3)数组是一个有序的集合. (4)数组中的元素可以重复,而且重复的对象会成为数组元素.
创建数组对象,
1.1使用便利构造器:关键词arrayWithObjects
arrayWithObjects 创建对象时可以指定多个对象元素,元素与元素之间通过逗号进行间隔.
nil 作为数组元素存放的结束标志.遇到nil之后,之后的元素都不会放入数组中,
例如 NSArray * arr = [NSArray arrayWithObjects : 在此处添加字符串对象 , 以nil 结束];
1.2使用初始化方法.关键词initWithObjects
NSArray *arr2 = [[NSArray alloc] initWithObjects : 在此处添加字符串对象 , 以nil 结束];
2.NSArray方法
2.1 获取元素个数。关键字词是count
例如: NSUInteger count = [arr2 count];
NSLog(@"%lu", count);
2.2根据索引值获取对象。
2.2.1获取指定下标对应的元素 .关键词是objectAtIndex:
例如: NSString *str = [arr2 objectAtIndex:0];
NSLog(@"str = %@", str);
2.2.2获取数组中的第一个元素 .关键词是firstObject
例如:NSString *firstObject = [arr2 firstObject];
NSLog(@"firstObject = %@", firstObject);
2.2.3获取数组中的最后一个元素 关键词是lastObejct
NSString *lastObejct = [arr2 lastObject];
NSLog(@"lastObejct = %@", lastObejct);
2.2.4 获取对象在数组中的索引值。关键词是indexOfObject
NSUInteger index = [arr2 indexOfObject:@"dd"];
NSLog(@"index = %lu", index);
2.2.5 判断是否包含某个对象 关键词是containsObject
例如:BOOL isExist = [arr2 containsObject:@"dd"];
NSLog(@"isExist = %d", isExist);
2.2.6数组排序(幼儿版) 关键词是sortedArrayUsingSelector
例如: NSArray *sortArr = [arr2 sortedArrayUsingSelector:@selector(compare:)];
NSLog(@"sortArr = %@", sortArr);
2.2.7 快速遍历(快速枚举) 使用 forin
注意forin是用于将集合中的元素遍历出来.
for (type *object in collection) {
statements
}
forin的中 type数组中元素的类型. object 起一个对象的名字(自己拟定的) . collection :集合(也就是大容器,数组,字典,或者集合)
例如 for (int i = 0; i < [arr2 count]; i++) {
NSString *str = [arr2 objectAtIndex:i];
NSLog(@"%@", str);
}
3. NSMutableArray 方法
3.1创建数组对象
3.1.1利用便利构造器 例如 NSMutableArray *arr = [NSMutableArray arrayWithObjects: 在此处添加数组对象 , 以nil 结束];
3.1.2使用初始化方法 例如
NSMutableArray *arr1 = [[NSMutableArray alloc] initWithObjects: 在此处添加数组对象 , 以nil 结束];
3.2 给数组添加对象 关键字是addObject
例如 Book *book= [[Book alloc] initWithName:@"iOS高高级编程" author:@"Frank" price:300];
[arr addObject:book];
3.3删除数组中的一个对象 关键词是removeObjectAtIndex
例如 [arr removeObjectAtIndex:0];
3.4查找数组中的对象 关键词isEqualToString
用forin 获取到数组中的元素,然后对比名字,如果相同就输出名字.
例如 for (Book *book in arr) {
if ([[book name] isEqualToString:@"iOS高级编程"]) { NSLog(@"查找成功");
}
}
3.5输出数组中所有对象 用forin
例如 输出书籍清单(书名
for (Book *book in arr) {
NSLog(@"%@", [book name]);
}
注意:如果想一次性输出数组所有内容则要重写从父类继承过来的description方法
当打印该类的对象时,系统会自动调用该方法.
例如- (NSString *)description
{
return [NSString stringWithFormat:@"%@ %@ %g", _name, _author, _price];
}
%g可以忽略无用的0
相关文章推荐
- OC 中的数组方法(不可变数组NSArray 和 可变数组 NSMutableArray)
- OC可变数组(NSMutableArray)相关方法
- OC基础使用(七 NSMutableArray 可变数组)
- OC--NSMutableArray可变数组
- OC-044.可变数组NSMutableArray
- Snail—OC学习之可变数组NSMutableArray
- OC学习之道:OC对象,字符串和数组的使用方法NSString,NSMutableString ,NSArray,NSMutableArray
- 数组的常用方法(不可变:NSArray, 可变:NSMutableArray)
- OC中的NSMutableArray(可变数组)
- 删除可变数组NSMutableArray中的重复数据
- iOS objective-c之-8:数组NSArray 可变数组-(NSMutableArray)
- 20150611_OC之数组NSMutableArray中函数操作
- OC 自带方法 简绍 4 NSMutableArray
- NSArray与NSMutableArray 数组与可变数组
- NSArry 为静态数组,不能往里面添加元素 NSMutableArray 为动态数组,是NSArray 的子类
- OC总结----类的方法.继承.NSString类的常用方法.NSMutableString 类的方法.数组类.字典类.block语法以及数组排序高级.属性.category (分类,类目).延展,等
- OC-数组常用操作(NSArray、NSMutableArray)
- NSMutableArray 可变数组-Objective-C
- NSMutableArray--可变数组
- 固定数组NSArray 和 可变NSMutableArray