object-c의 NSDictionary

3677 단어
/** NSDictionary 변경 불가 사전 객체 만들기 [,,] 배열() 사전 요소의 일반 형식 키:value 키 값 쌍 @ {key:value, @ "one": @ "1", [NSDate Date]: @ "1"};보통 키는 문자열 사전으로 순서가 없습니다 dict1 @ {@ "frames": @ {1:@ {}, 2:@ {}, @ "metadata": @ {}} dict2 = dict1 [@ "frames"]
*/
1  key:value    
      NSDictionary *dict = @{@"key":@"value",@"one":@"1",@"two":@"2"};
      NSLog(@"dict= %@",dict);
2  value key 
 value key
      NSDictionary * dict1 = [[NSDictionary alloc]initWithObjectsAndKeys:@"value",@"key",@"1",@"one",@"2",@"two", nil]; 
    NSLog(@"dict1 = %@",dict1);
3  
      NSDictionary *dict2 = [[NSDictionary alloc]initWithDictionary:dict1];
        NSLog(@"dict2 = %@",dict2);
4  key    value 
        NSArray *keys = @[@"key",@"one",@"two"];
        NSArray *values = @[@"value",@"1",@"2"];
        NSDictionary *dict3 = [[NSDictionary alloc]initWithObjects:values forKeys:keys];
        NSLog(@"dict3 = %@",dict3);

/************** 클래스 메소드 사전 객체 만들기 *********************/
// value key 
        NSDictionary *dict4 = [NSDictionary dictionaryWithObjectsAndKeys:@"value",@"key",@"1",@"one",@"2",@"two", nil];
        NSLog(@"dict4 = %@",dict4);
// 
        NSDictionary *dict5 = [NSDictionary dictionaryWithDictionary:dict4];
       NSLog(@"dict4 = %@",dict5);
// key value 
        NSDictionary *dict6 = [NSDictionary dictionaryWithObjects:values forKeys:keys];
       NSLog(@"dict6 = %@",dict6);
//  
        NSDictionary * dict7 = [NSDictionary dictionaryWithObject:@"1" forKey:@"one"];
        NSLog(@"dict7 = %@",dict7);

사전의 조작 사전의 키는 유일한value값입니다. 원 = 1 two = 1 이미 존재하는 키에 대응하는value를 추가하면 뒤에 덮어쓸 수 있습니다.
//1  
        NSDictionary *dict = @{@"one":@"1",@"two":@"2",@"three":@"3",@"four":@"4",@"five":@"5"};
        NSUInteger count = [dict count];
//2  key value
        // dict[@"key"];
        id obj = [dict objectForKey:@"one"];
        NSLog(@"obj = %@",obj);
//3  key
        NSArray *keyArray = [dict allKeys];
        NSLog(@"keys = %@",keyArray);
//4  key
        NSArray *array = [dict allKeysForObject:@"1"];
        NSLog(@"array = %@",array);
//5  value
        NSArray *ValueArray = [dict allValues];
        NSLog(@"values = %@",ValueArray);
//6  
        BOOL ret = [dict isEqualToDictionary:@{@"one":@"1"}];
        if (ret == 0)
        {
            NSLog(@" ");
        }
// 7       
        NSUInteger len = [dict count];
        NSArray *keyArrays = [dict allKeys];
        
        for (NSInteger  i= 0; i
//  key
        NSEnumerator *keyEnum = [dict keyEnumerator];
        id key = nil;
        while (key = [keyEnum nextObject])
        {
            NSLog(@"%@ : %@",key, dict[key]);
        }
//for-in 
        for (id key in dict)
        {
            NSLog(@"%@:%@",key,dict[key]);
        }

좋은 웹페이지 즐겨찾기