Objective-C 之数组,字典,集合
一. 数组类
- NSArray 类
a. 存储指定对象的集合,其数组本身不能改变.
b. 指定初始化方法:initWithObject:@"",@"",@"",nil //注意nil是结束标识,类似于C语言中字符串结束标识'\0'
便利构造器方法:arrayWithObject:@"",@"",@"",nil
初始化语法糖形式Eg: NSArray *array = @[@"",@"",@""];//次处不需要nil结尾
c. C语言中获取数组元素个数的方法为 sizeof(array) / sizeof(array[0])在OC数组中获取数组元素对象的个数的方法为:
array.count为NSArray实例化对象的一个属性.
d. 获取指定下标元素对象的实例方法
objectAtIndex:(NSUInteger)或语法糖形式 array[下标]
e. 判断一个对象是否存在在数组中的实例方法
containsObject:(id) 返回值为BOOL型
f. 获取指定对象在数组中的下标的实例方法
indexOfObject:@"";返回值为long型
g. NSString类对象转化成为NSArray对象实例方法(通过哪个特殊字符进行分割,由字符串调用的实例方法)
componentsSeparatedByString:@""表示以为分割赋将字符串分割成为俩个子字符对象存放在指定数组中
h. 以指定字符对象连接数组元素对象返回字符串对象(由数组调用的实例方法)
componentsSeparatedJoinedByString:@""
- NSMutableArray 类
a. NSMutableArray为NSArray的子类.即初始化可以用NSArray的方法以及便利构造器方法
也可以创建空的数组
b. 顺序添加对象的实例方法 addObject:@"";
c. 尾部追加Array的实例方法addObjectsFromArray:@"";
d. 在指定下标处,添加对象的实例方法insertObject:@"" atIndex:
e. 替换指定下标对象的实例方法 replaceObjectAtIndex:(NSUInteger) withObject:@"" //语法糖 array[i] = @"";
f. 交换可变数组中两个指定下标的元素对象的实例方法 exchangeObjectAtIndex:(NSUInteger) withObjectAtIndex:(NSUInteger)
g. 删除整个数组中的元素对象的实例方法 removeAllObjects
h. 删除指定下标的元素对象的实例方法 removeObjectAtIndex:(NSUInteger)
i. 删除最后一位元素对象的实例方法 removeLastObject
二. 字典类
- NSDictionary 类
a. 创建字典对象的初始化方法中提供的键值对是值,键组合,可以通过方法名看到先写值,再写键.(nil为结束标识)
Eg:
NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"(Object)",@"(Key)",nil]
b. 可以通过键数组与值数组对NSDictionary的对象进行初始化操作(键数组与值数组的元素对象个数必须相等)
Eg:
NSDictionary *dic = [NSDictionary dictionaryWithObjects:@[@"",@""] forKeys:@[@"",@""]];
c. 字典的语法糖形式创建对象(键值对利用:分割,左为键,右为值,@{}创建对象)
Eg: NSDictionary *dic = @{@"name":@"Carson",@"age":@23};键值对成对出现
d. NSDictionary 类实例化对象的方法与属性
获取键值对的个数: count返回值为NSUInteger类型
获取所有键数组实例方法: (返回值为数组类型) allKeys
获取所有值数组实例方法: (返回值为数组类型) allValues
- NSMutableDIctionary 类
a. 根据已有不可变字典对象来创建可变字典对象的实例方法
dictionaryWithDictionary:(NSDictionary *)
b. 添加键值对的实例方法
- (instancetype) setObject:(id) forKey:(key)
c. 修改键所指的值得方法
- (instancetype) setObject:(id) forKey:(key)
d. 删除指定键值的方法
- (instancetype) removeObjectForKey(key)
e. 删除字典中所有键值对的方法
- (instancetype) removeAllObjects
三. 集合类
- NSSet 类
a. 特点:集合中的元素对象具有互异性,无序性的特点,相同的对象只能存在一个.
b. NSSet类的初始化方法:setWithObjects:(id),nil // nil为结束标识
c. 获取NSSet类实例化对象中元素对象的个数为的属性为 .count
d. 随便取出NSSet的实例化对象中的一个元素对象 anyObject
e. 将NSSet对象转化成为NSArray对象并可以进行遍历操作
Eg:NSArray *array = [set allObjects];//set为一个集合
f. 通过NSSet集合中元素互异性则可以剔除数组中重复的元素对象.
Eg:NSSet *set = [NSSet setWithArray:array];
- NSMutableSet 类
a. 特点:为一个可变的集合,可以对集合进行增,删,改的操作.
b. 将不可变集合对象转化成为可变集合对象
Eg: NSMutableSet *mutableSet = [NSMutableSet setWithSet:set];
c. 增加一个元素对象
Eg: [mutableSet addObject:@""];
d. 删除一个元素对象
Eg:[mutableSet removeObject:@""];
e. 删除所有元素对象
Eg:[mutableSet removeAllObjects];
文/CarsonChan(简书作者)
原文链接:http://www.jianshu.com/p/4d9de936198a
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。