第一种构造方法——值键对 NSDictionary *dic = [[NSDictionary alloc]initWithObjectsAndKeys:<#(nonnull id), ...#>, nil];
//使用Key来取值 NSString *k = @'2'; NSString *v = [dic objectForKey:k]; NSLog(@'%@',v);
//键是唯一的,值是可以重复的 NSDictionary * Dict = [[NSDictionary alloc]initWithObjectsAndKeys:@'red',@'1',@'green',@'1', nil]; NSString *key = @'1'; NSString *value = [Dict objectForKey:key]; NSLog(@'%@',value);
第二种构造方法——键值对 NSDictionary *dic1 = @{};
键值对的构造方法是每一对以“,”进行隔开,键对应的值是以“:”进行连接。
//遍历 //枚举器——键的遍历 NSEnumerator *enum1 = [dic1 keyEnumerator]; id k1; while (k1 = [enum1 nextObject]) { NSLog(@'%@',k1); }
//枚举器——值的遍历 NSEnumerator *enum2 = [dic1 objectEnumerator]; id values; while (values = [enum2 nextObject]) { NSLog(@'%@',values); }
//枚举器——for in递增快速遍历法 /* 由于该方法得到的是字典的键, 得到只需要先得到键才能找到对应的值 */ id i; for (i in dic1 ) { NSLog(@'%@',i); }
//以键找值 NSLog(@'%@',[dic1 objectForKey:i]);