我如何检查NSDictionary
键值是否为空?
我正在使用ASIHttpRequest
:
NSDictionary *tempDict=[[[request responseString] JSONValue] valueForKey:@"data"];
如果键值为" 0键/值对"请给我一个答案。
谢谢。答案 0 :(得分:1)
您应该在访问之前检查NSDictionary键值。如果条件包含任何非null值,则使用相同的键放置条件,否则请采取预防措施。
if([[[request responseString] JSONValue] valueForKey:@"data"]])
{
NSDictionary *tempDict=[[[request responseString] JSONValue]valueForKey:@"data"];
}
else
{
// Show alert here
}
答案 1 :(得分:0)
您可以检查NSDictionary中的密钥是否存在,如下所示:
NSDictionary *dict = [[NSDictionary alloc] initWithObjectsAndKeys:@"Ron",@"first_name",@"25",@"age", nil];
if([self dictionary:dict containsKey:@"age"])
{
// Key exists
}
else
{
// Key does not exists
}
使用此辅助功能:
-(BOOL)dictionary:(NSDictionary *)dictionary containsKey:(id)key
{
if(dictionary != nil)
{
if([dictionary objectForKey:key])
{
return YES;
}
}
return NO;
}
答案 2 :(得分:0)
您是否只想检查NSDictionary是否为空?然后你就可以这样检查一下。
if (tempDict==nil)
{
Nslog(@"Dictonary is null");
}
else
{
}