4
Objective-C에서 외부 사전의 내부 사전에 직접 액세스 할 수 있습니까? 예를 들어, 내부 사전의 일부인 객체에 키가 있습니다. 해당 키에서 객체에 직접 액세스 할 수있는 방법이 있습니까?중첩 된 NSDictionary의 개체 액세스
GameDictionary {
Indoor_Game = { "game1" = chess; "game2" = video_Game; "game3" = poker; };
OutDoor_Game = { "game4" = cricket; "game5" = hockey; "game6" = football; };
};
내가 "game4"키를 가지고,하지만 난 현재 내가 개체에 대한 각 사전에서 검색해야이 키의 사전 객체가 존재하는 모르는, 내가 사용하고있는 코드는 다음과 같습니다
NSString* gameName = nil;
NSString* gameKey = @"game4";
NSArray* gameKeys = [GameDictionary allKeys];
for (int index = 0; index < [gameKeys count]; index ++) {
NSDictionary* GameType = [GameDictionary objectForKey:[gameKeys objectAtIndex:index]];
if ([GameType objectForKey:gameKey]) {
gameName = [GameType objectForKey:gameKey];
break;
}
}
for 루프 대신 for 내부 사전에 직접 액세스 할 수있는 쉬운 방법입니다.
당신은 같은 전체 경로가 필요합니다 - "OutDoor_Game.game4"를,하지만 난 "game4"입니다 절반 경로를 가지고있다. – Mayur
@Mayur 당신이 통제하는 데이터 구조입니까? 보다 나은 재사용을 위해 다시 작업하는 것이 좋습니다. 다음과 같습니다. http://pastebin.com/xUCmGq4c –