• NSDictionary,NSMutableDictionary 使用


    NSDictionary

    key --->value
    索引 --->内容
    存储键值对

    (1)三种创建方式:

    NSDictionary *dict = [NSDictionary dictionaryWithObject:@"Jony" forKey:@"name"];
    

      

    NSArray *keys = @[@"name", @"location"];
    NSArray *objects = @[@"Jony", @"China"];
    NSDictionary *dict = [NSDictionary dictionaryWithObject:objects forKey:keys];
    
    NSDictionary *dict = @{@"name" : @"Jony", @"location", @"China"};
    

    (2)调用

    id obj = [dict objectForKey:@"name"];
    
    id obj = dict[@"name"];
    

      

    NSMutableDictionary

    NSMutableDictionary *dict = [NSMutableDictionary dictionary];
    
    [dict setObject:@"Jony" forKey:@"name"];
    
    //deleate
    [dict removeObjectForKey:(id)];

    NSMutableDictionary *dict = @{@"name" : @"Jony", @"location", @"China"};

      

    (1)字典遍历方式

    NSArray *keys = [dict allKeys];
    
    for (int i = 0; i < dict.count; i++)
    {	
    NSString *key = keys[i];
    NSString *object = dict[key];
    
    NSLog(@"%@ = %@", key, object);
    }
    

      

    [dict enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop)]
    {
    NSLog(@"%@ -- %@", key, obj);
    
    //Only oneTime
    *stop = YES;
    }
    

      

    Example:

    NSArray *persons = @[
    @{@"name" : @"Jony", @"location", @[@"China", @"Anhui"]},
    @{@"name" : @"Jake", @"location", @"USA"},
    @{@"name" : @"July", @"location", @"UK"},
    @{@"name" : @"Jasson", @"location", @"Jepan"}
    ]
    
    NSArray *location = persons[0][@"location"][0];
    

      

  • 相关阅读:
    利用for循环 修改精灵图背景位置
    添加列表项 避免浏览器反复渲染 Fragment
    向元素添加属性名和属性值
    分割文本节点
    查询、回显 基本功能
    获取注释
    合并文本节点
    Node(节点)的4个操作方法
    setTimeout与setInterval
    javascript循环
  • 原文地址:https://www.cnblogs.com/fangchun/p/4732686.html
Copyright © 2020-2023  润新知