您的位置:首页 > 其它

OC类之 Dictionary

2015-07-22 13:32 288 查看


@property (readonly)
NSUInteger count;                 // 键值对数

 NSDictionary :  
- (NSArray *)allKeysForObject:(id)anObject;                                     // 所有该对象的键值
+ (instancetype)dictionaryWithObject:(id)object forKey:(id <NSCopying>)key;
    // 键值的对象

+ (instancetype)dictionaryWithObjectsAndKeys:(id)firstObject, ... ;                     // 便利构造器
+ (instancetype)dictionaryWithDictionary:(NSDictionary *)dict;

+ (instancetype)dictionaryWithObjects:(NSArray *)objects forKeys:(NSArray
*)keys; 
 
- (instancetype)initWithObjectsAndKeys:(id)firstObject, ... ;                           // 初始化
- (instancetype)initWithDictionary:(NSDictionary *)otherDictionary;
- (instancetype)initWithObjects:(NSArray *)objects forKeys:(NSArray *)keys;

NSMutableDictionary :
- (void)removeObjectForKey:(id)aKey;                             // 删除

- (void)removeAllObjects;
- (void)removeObjectsForKeys:(NSArray *)keyArray;

- (void)setObject:(id)anObject forKey:(id <NSCopying>)aKey;
     // 没有akey创建一个, 对应对象改成anObject
- (void)setDictionary:(NSDictionary *)otherDictionary;           // 设置器

数组可以嵌套字典 字典还可以嵌套数组
昨天的省市区继续
int main(int argc, const char * argv[]) {

NSString *filePath = @"/Users/dllo/Desktop/OC06_省市区字典数组/OC06_省市区字典数组/area-2.txt";
NSString *mstring = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil];
NSArray *mArray = [mstring componentsSeparatedByString:@"\n" ];
NSCharacterSet *cSet = [NSCharacterSet characterSetWithCharactersInString:@" 0123456789"];
NSMutableArray *proArray = [NSMutableArray array];
NSMutableArray *cityArray = nil;
NSMutableArray *areaArray = nil;
for (NSString *s in mArray) {
if (![s hasPrefix:@" "]) {
NSString *s1 = [s stringByTrimmingCharactersInSet:cSet];
NSMutableDictionary *pDic = [NSMutableDictionary dictionary];
cityArray = [NSMutableArray array];

[pDic setObject:s1 forKey:@"name"];
[pDic setObject:cityArray forKey:@"cityArray"];
[proArray addObject:pDic];
}
if ([s hasPrefix:@" "] && ![s hasPrefix:@" "]) {
NSString *s1 = [s stringByTrimmingCharactersInSet:cSet];
areaArray = [NSMutableArray array];
NSMutableDictionary *cDic = [NSMutableDictionary dictionary];

[cDic setObject:s1 forKey:@"name"];
[cDic setObject:areaArray forKey:@"areaArray"];
[cityArray addObject:cDic];
}
if ([s hasPrefix:@" "]) {
NSString *s1 = [s stringByTrimmingCharactersInSet:cSet];

[areaArray addObject:s1];

}
}
for (NSDictionary *prodic in proArray) {
NSLog(@"%@", prodic[@"name"]);
NSArray* cArray = prodic[@"cityArray"];
for (NSDictionary *cityDic in cArray) {
NSLog(@"%@", cityDic[@"name"]);
NSArray *rArray = cityDic[@"areaArray"];
for (NSString *temp in rArray) {
NSLog(@"%@", temp);
}
}
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  dictionary