字典Dictionary

字典没有顺序可言

key  -  Value

键(字符串对象)- 值(对象)

不可变字典

0、字典里面多个键值对的值可以相同,但是键不能相同,必须唯一

1、字典存储数据的优势

  a、方便查找

  b、方便删改

2、如何创建一个字典

     NSDictionary *dic = @{@"小王":xw, @"张三":zs, @"李四":ls};

        

        NSDictionary *dic1 = [NSDictionary dictionary];

        NSDictionary *dic1_ = [[NSDictionary alloc] init];

        

        NSDictionary *dic2 = [NSDictionary dictionaryWithDictionary:dic];

        NSDictionary *dic2_ = [[NSDictionary alloc] initWithDictionary:dic];

        

        //初始化一个键值对

        NSDictionary *dic3 = [NSDictionary dictionaryWithObject:xw forKey:@"小王"];

        

        //创建拥有多个键值对的字典

        NSDictionary *dic4 = [NSDictionary dictionaryWithObjects:@[xw, zs, ls] forKeys:@[@"xiaowang", @"zhangsan", @"lisi"]];

        NSLog(@"%@", dic4);

 

3、获取字典键值对个数

  NSLog(@“count:%ld,dic5.count”);

 

4、获取所有的键keys(字符串对象)

  NSArray *allKeys = [dic5 allKeys];

5、获取所有的value

  NSArray *allValues = [dic5 allValues];

6、遍历一个数组

  for(NSString *key in allKeys){

    NSLog(@"key=%@:value=%@",key,[dic2 objectForKey:key]);

  }

7、通过key获取对应的value

  NSArray *tempArray = [dic5 objectForKey:@"man"];

 

NSMutableDictionary  可变字典

1、创建可变字典

  NSMutableDictionary *mDic = [NSMutableDictionary dictionaryWithCapacity:0];

2、添加键值对

     [mDic setObject:@"Pxd" forKey:@"name"];

        [mDic setObject:pArray forKey:@"man"];

        [mDic setObject:@"红楼梦" forKey:@"名著"];

 

3、更改某个键对应的值

     [mDic setObject:@"hongloumeng" forKey:@"名著"];

4、删除键值对

      [mDic removeObjectForKey:@"名著"];

          [mDic removeObjectsForKeys:@[@"man", @"nb", @"hel"]];

          [mDic removeAllObjects];

原文地址:https://www.cnblogs.com/zhaopengs/p/5072327.html