다음과 같이 물어볼 필요가 있습니다. 사전이 있다고 가정 해 봅시다.
NSMutableDictionary *xyz=[[NSMutableDictionary alloc] init];
[xyz setValue:@"sagar" forKey:@"s"];
[xyz setValue:@"amit" forKey:@"a"];
[xyz setValue:@"nirav" forKey:@"n"];
[xyz setValue:@"abhishek" forKey:@"a"];
[xyz setValue:@"xrox" forKey:@"x"];
이제 다음과 같이 확인해야합니다
[xyz에 키 “b”값이 포함되어 있습니까? ?? 쌍인가?
질문은 어떻게?
다른 질문은 총 키-값 쌍을 계산하는 방법입니다.
예를 들어 말해 NSInteger mCount=[xyz keyCounts];
답변
그냥 objectForKey:@"b"
. 를 반환하면 nil
해당 키에 개체가 설정되지 않은 것입니다.
if ([xyz objectForKey:@"b"]) {
NSLog(@"There's an object set for key @\"b\"!");
} else {
NSLog(@"No object set for key @\"b\"");
}
편집 : 편집 한 두 번째 질문은 간단 NSUInteger mCount = [xyz count];
합니다. 이 두 답변은 모두 잘 문서화되어 있으며 NSDictionary 클래스 참조 ( [1] [2] ) 에서 쉽게 찾을 수 있습니다 .
답변
리터럴 구문으로 다음과 같이 확인할 수 있습니다.
static const NSString* kKeyToCheck = @"yourKey"
if (xyz[kKeyToCheck])
NSLog(@"Key: %@, has Value: %@", kKeyToCheck, xyz[kKeyToCheck]);
else
NSLog(@"Key pair do not exits for key: %@", kKeyToCheck);