A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 飞奔的小鱼 中级黑马   /  2015-11-7 13:40  /  759 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. //字典是以键值对的形式来存储数据  key value
  2. int main(int argc, const char * argv[])
  3. {
  4.     @autoreleasepool {
  5.         //1.创建字段,不可变的
  6.         NSDictionary * dic = [NSDictionary dictionaryWithObjectsAndKeys:@"xiaozhe",@"name", nil];
  7.         NSLog(@"dic %@",dic);
  8.         
  9.         //2.快捷创建方式
  10.         NSDictionary * dic2 = @{ @"one":@"1",@"two":@"2"};
  11.         NSLog(@"dic2 %@",dic2);
  12.         
  13.         //3.字典中可以存任意数据类型
  14.         // 字典的顺序不是自然顺序
  15.         NSArray * array = @[@"one",@"two"];
  16.         NSDictionary * dic3 = @{
  17.                                 @"one":@"1",
  18.                                 @"num":[NSNumber numberWithInt:10],
  19.                                 @"aaa":dic2,
  20.                                 @"bbb":dic,
  21.                                 @"ar1":array
  22.                                 
  23.                                 };
  24.         
  25.         NSLog(@"dic3 %@",dic3);
  26.         //4.获得字典的长度
  27.         NSLog(@"count %ld",dic3.count);
  28.         //5.从字典中取值
  29.         NSString * str  = [dic3 objectForKey:@"one"];
  30.         NSLog(@"str %@",str);
  31.         
  32.         NSDictionary * dicTmp = [dic3 objectForKey:@"aaa"];
  33.         NSLog(@"dicTmp %@",dicTmp);
  34.         NSArray * arrayTmp = [dic3 objectForKey:@"ar1"];
  35.         NSLog(@"arrayTmp %@",arrayTmp);
  36.         //6.遍历
  37.         //取出所有的key值
  38.         NSArray * allkeys = [dic3 allKeys];
  39.         NSLog(@"allkeys %@",allkeys);
  40.         for (int i = 0; i < allkeys.count; i++)
  41.         {
  42.             NSString * key = [allkeys objectAtIndex:i];
  43.             
  44.             //如果你的字典中存储的多种不同的类型,那么最好用id类型去接受它
  45.             id obj  = [dic3 objectForKey:key];
  46.             NSLog(@"obj %@",obj);
  47.         }
  48.    
  49.         //2.枚举器
  50.         NSEnumerator * enumerator =  [dic3 objectEnumerator];
  51.         id value;
  52.         while (value = [enumerator nextObject]) {
  53.             NSLog(@"value %@",value);
  54.         }   
  55.     }
  56.     return 0;
  57. }
复制代码


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马