美文网首页
NSDictionary使用小结

NSDictionary使用小结

作者: 爱上火烧的小毛驴 | 来源:发表于2017-04-27 13:02 被阅读21次
    #import <Foundation/Foundation.h>
    
    
    int main(int argc, const char * argv[])
    {
    
        @autoreleasepool {
    
            //创建字典
            NSDictionary *dic1 = [NSDictionary dictionaryWithObject:@"value" forKey:@"key"];
            NSLog(@"dic1 :%@", dic1);
            
            
            //创建多个字典
            NSDictionary *dic2 = [NSDictionary dictionaryWithObjectsAndKeys:
                                  @"value1", @"key1",
                                  @"value2", @"key2",
                                  @"value3", @"key3",
                                  @"value4", @"key4",
                                  nil];
            NSLog(@"dic2 :%@", dic2);
            
            
            //根据现有的字典创建字典
            NSDictionary *dic3 = [NSDictionary dictionaryWithDictionary:dic2];
            NSLog(@"dic3 :%@", dic3);
            
            
            //根据key获取value
            NSLog(@"key3 value :%@", [dic3 objectForKey:@"key3"]);
            
            //获取字典数量
            NSLog(@"dic count :%d", dic3.count);
            
            //所有的键集合
            NSArray *keys = [dic3 allKeys];
            NSLog(@"keys :%@", keys);
            
            //所有值集合
            NSArray *values = [dic3 allValues];
            NSLog(@"values :%@", values);
            
            
            
            NSMutableDictionary *mutableDic = [[NSMutableDictionary alloc] initWithObjectsAndKeys:
                                               @"mvalue1", @"mkey1",
                                               @"mvalue2", @"mkey2", nil];
            //添加现有的字典数据
            [mutableDic addEntriesFromDictionary:dic3];
            NSLog(@"mutableDic :%@",mutableDic);
            
            //添加新的键值对象
            [mutableDic setValue:@"set1" forKey:@"setKey1"];
            NSLog(@"set value for key :%@",mutableDic);
            
            //以新的字典数据覆盖旧的字典数据
            [mutableDic setDictionary:dic2];
            NSLog(@" set dictionary :%@",mutableDic);
            
            //根据key删除value
            [mutableDic removeObjectForKey:@"key1"];
            NSLog(@"removeForkey :%@",mutableDic);
            
            //快速遍历
            for(id key in mutableDic) {
                NSLog(@"key :%@  value :%@", key, [mutableDic objectForKey:key]);
            }
            
            //枚举遍历
            NSEnumerator *enumerator = [mutableDic keyEnumerator];
            id key = [enumerator nextObject];
            while (key) {
                NSLog(@"enumerator :%@", [mutableDic objectForKey:key]);
                key = [enumerator nextObject];
            }
            
            
            //根据key数组删除元素
            [mutableDic removeObjectsForKeys:keys];
            NSLog(@"removeObjectsForKeys :%@",mutableDic);
            
            [mutableDic removeAllObjects];
            //删除所有元素
            NSLog(@"remove all :%@", mutableDic);
        }
        return 0;
    }
    

    相关文章

      网友评论

          本文标题:NSDictionary使用小结

          本文链接:https://www.haomeiwen.com/subject/vtwgzttx.html