Ios 目标C在NSDictionary中迭代和使用NSDictionary
我试图在NSDictionary中循环使用最整洁的NSDictionary 目前我有这个,它返回第一个NSDictionary项Ios 目标C在NSDictionary中迭代和使用NSDictionary,ios,objective-c,Ios,Objective C,我试图在NSDictionary中循环使用最整洁的NSDictionary 目前我有这个,它返回第一个NSDictionary项 NSDictionary *json = [NSJSONSerialization JSONObjectWithData:response for (NSString *tempObject in json ) { NSLog(@"Single element: %@", tempObject); } 以上方法很好 但是我想读一个更低的数组层,但是打击失败
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:response
for (NSString *tempObject in json ) {
NSLog(@"Single element: %@", tempObject);
}
以上方法很好
但是我想读一个更低的数组层,但是打击失败了
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:response options:kNilOptions error:&error];
for (id tempObject in json ) {
NSLog(@"Object: %@, Key: %@", [json objectForKey:tempObject], tempObject);
}
感谢Mich检查反序列化对象中是否包含数组或字典总是好的。您可以在尝试访问对象之前检查对象的类型。像这样的
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:response options:kNilOptions error:&error];
for (id jsonObject in json ) {
NSLog(@"Object: %@, Key: %@", [json objectForKey:tempObject], tempObject);
if ([jsonObject isKindOfClass:[NSDictionary class]]){
NSDictionary *deserializedDictionary = jsonObject;
NSLog(@"Deserialized JSON Dictionary = %@",
deserializedDictionary);
}
else if ([jsonObject isKindOfClass:[NSArray class]]){
NSArray *deserializedArray = (NSArray *)jsonObject;
NSLog(@"Deserialized JSON Array = %@", deserializedArray);
}
else {
/* Some other object was returned. We don't know how to
deal with this situation as the deserializer only
returns dictionaries or arrays */
}
}
希望它能帮助你
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:response options:kNilOptions error:&error];
for (NSString *tempObject in json ) {
NSLog(@"Object: %@, Key: %@", [json objectForKey:tempObject], tempObject);
NSLog(@"Object: %@, Key: %@", [json valueForKey:tempObject], tempObject);
}
//或者使用快速枚举
[json enumerateKeysAndObjectsUsingBlock:^(id key, id object, BOOL *stop) {
NSLog(@"@@@@Key Value is:%@ = %@", key, object);
}];
希望它能帮助你 你能发布json字典的内容吗?它包含什么?它是如何失败的?您会得到什么错误?json内容来自API