oc基础-oc之集合NSDictionary,NSMutableDictionary

 

NSMutableDictionary继承自NSDictionary  ,字典,NSMutableDictionary 可变集合  ,都是无序的

NSDictionary

1.创建方式

   [NSDictionary dictionaryWithObject:@"value" forKey:@"key"]

  [NSDictionary dictionaryWithObjects:值集合 forKeys: 键集合]//值集合和键集合用NSArray定义

  [NSDictionary dictionaryWithObjectsAndKeys:

      @"value1",@"key1",

      @"value2",@"key2",...,nil]//这种方式可读性非常差,不建议使用

  @{@"key1":@"value1",@"key2":@"value2",...}//这个事快速创建方式,但是只能用在不可变字典上

2.获得字典的长度:[dic count]返回NSUIntger

3.获取值 :

id obj=[dict objectForKey:@"key"]//原始的获取方式

id obj=dict[@"key"] /xcode重新封装的 快速获取方式

4.遍历:

  

 //方式1.
NSArray *keys=[dict allKeys];//获得字典所有的键集合
  for(int i=0;i<dic.count;i++)
  {
    NSString *key=dic[i];
     NSLog(@"%@",dic[key]);      
  }
//方式2

[dict enumerateKeysAndObjectsUsingBlock:^(id key,id obj, Bool *stop)

    {  }];

NSMutableDictionary

1.创建方式和NSDictionary一样,但是不能使用@{}快速创建对象,

  另外还有一种NSDictionary不使用的方式:[NSMutableDictionary dictionary]

2.新增的方法

[dict  setObject:@"value" forKey:@"key"//新增元素

 [dict removeObjectForKey:@"key"]//根据键移除指定的元素

注意:字段允许值相同,不允许键相同

原文地址:https://www.cnblogs.com/hui1107464497/p/4514389.html