NSDitionary基本用法

来源:互联网 发布:kindle知乎 编辑:程序博客网 时间:2024/06/10 13:26
#pragma mark - 字典是无序的,value和key都必须是对象,key值不能重复,如果重复了最后存入的value将不能存入字典    //类方法创建字典(空字典)    NSDictionary *dic = [NSDictionary dictionary];    //实例方法初始化    NSDictionary *dic1 = [[NSDictionary alloc]init];        //只有一个键值对的字典    NSDictionary *ddd = [NSDictionary dictionaryWithObject:@"齐天大圣" forKey:@"wukong"];        //两两一对,第一个是对象,第二个是key,通过key寻找对应的对象    NSDictionary *dic2 = [NSDictionary dictionaryWithObjectsAndKeys:@"value",@"key",@"张超凡",@"ABC",@"大娃",@"def", nil];        //通过key查看字典中的value    NSLog(@"%@",[dic2 objectForKey:@"ABC"]);        NSDictionary *dic3 = [[NSDictionary alloc]initWithObjectsAndKeys:@"value",@"key",@"小黑",@"黑",@"小红",@"红", nil];        //快速创建字典@{key:value}    NSDictionary *dddd = @{@"key":@"张三",@"lisi":@"李四"};        //字典的元素个数    NSInteger count = [dddd count];        //取出所有的key值    NSArray *arrayKey = [dic3 allKeys];        //只输出对象    for (int i = 0; i < [dic3 count]; i++) {        NSLog(@"%@",[dic3 objectForKey:[arrayKey objectAtIndex:i]]);    }        NSLog(@"value = %@",dddd[@"key"]);    #pragma mark - 字典遍历    //快速遍历    for (NSString *key in dddd) {        NSLog(@"-------%@:%@",key,[dddd objectForKey:key]);    }        //对象和key都输出    for (int i = 0; i < [dic3 count]; i++) {        NSLog(@"%@:%@",[dic3.allKeys objectAtIndex:i],[dic3 objectForKey:[dic3.allKeys objectAtIndex:i]]);    }        [dddd enumerateKeysAndObjectsUsingBlock:^(id  _Nonnull key, id  _Nonnull obj, BOOL * _Nonnull stop) {        NSLog(@"+++++key = %@:value = %@",key,obj);    }];        //字典写入文件    BOOL isWrite = [dddd writeToFile:@"/Users/game23-3/Desktop/dic.plist" atomically:YES];    if (isWrite) {        NSLog(@"写入成功");    }        //从文件中读取字典    NSDictionary *readDic = [NSDictionary dictionaryWithContentsOfFile:@"/Users/game23-3/Desktop/dic.plist"];    NSLog(@"--------%@",readDic);        #pragma mark - 可变字典    //类方法初始化    NSMutableDictionary *mutableDic = [NSMutableDictionary dictionary];        NSMutableDictionary *muDic = [NSMutableDictionary dictionaryWithCapacity:3];        //添加    [mutableDic setValue:@"adc" forKey:@"快挂了"];        //删除(根据key移除对象)    [mutableDic removeObjectForKey:@"快挂了"];        //删除全部    [mutableDic removeAllObjects];    //修改    [mutableDic setObject:@"ttt" forKey:@"快挂了"];    //查找    if ([mutableDic.allKeys containsObject:@"快挂了"]) {        NSLog(@"存在这个key");    }

0 0
原创粉丝点击