字典
存储的内存不是连续的
用key和value进行对应(键值)
kvc 键值编码
NSDictionary *dict1 = [NSDictionary dictionaryWithObject:@"1" forKey:@"a"];
NSDictionary *dict3 = @{@"1":@"a",@"2":@"b"};
NSLog(@"dict3 = %@",dict3);
int count = (int)[dict3 count];
NSString *value = [dict3 valueForKey:@"b"];
NSString *value2 = [dict3 objectForKey:@"b"];
NSArray *allValue = [dict3 allValue];
NSArray *allKeys = [dict3 allKeys] ;
NSString *str = [dict3 objectForKey:[NSArray arrayWithObjects:
@"a",@"b",@"d",nil] notFoundMarker:@"not fount"
//遍历字典
for(NSString *key in dict3)
{
NSLog(@"%@ = %@",key, [dict3 objectForKey:key]);
}
NSEnumerator *en = [dict3 keyEnumerator];
id key = nil;
while(key = [en nextObject]){
NSLog(@"key - %@",key);
}
[dict3 enumerateKeysAndObjectsUsingBlock:<#^(id key, id obj, BOOL *stop)block#>]
NSMutableDictionary *dict = [[NSMutableDicttionary alloc] init];
//添加键值对
[dict setObject:@"1" forKey:@"a"];
[dict setObject:@"2" forKey:@"b"];
//删除键值对
//[dict removeAllObjects];
//[dict removeObjectForKey:@"b"];
[dict removeObjectsForKeys:[NSArray arrayWithObjects:@"a",@"b", nil]];