打印 NSDictionary 的键而不是值
Posted
技术标签:
【中文标题】打印 NSDictionary 的键而不是值【英文标题】:Print keys of NSDictionary instead of values 【发布时间】:2012-04-10 14:46:47 【问题描述】:我从 json 网络服务下载了一些内容。
是否可以打印键而不是值?以防万一不知道密钥是什么。
【问题讨论】:
How to retrieve all keys from a dictionary?的可能重复 【参考方案1】:for( NSString *aKey in [dictionary allKeys] )
// do something like a log:
NSLog(aKey);
或
NSLog([dictionary allKeys]);
这应该可以解决问题
【讨论】:
或只是NSLog(@"%@", [dictionary allKeys])
确实如此。取决于他打算用它做什么。
谢谢!效果很好!但如果有数组,它将不起作用。例如 "postalcodes":["adminCode3":"70805","adminName2":"Politischer Bezirk Reutte","adminName3"]【参考方案2】:
您应该可以使用 NSDictionary 的 keyEnumerator 方法来获取密钥,然后您可以循环它们并将它们打印出来。
借用苹果的例子:
NSEnumerator *enumerator = [myDictionary keyEnumerator];
id key;
while ((key = [enumerator nextObject]))
NSLog(@"Do something with the key here:%@",key);
【讨论】:
以上是关于打印 NSDictionary 的键而不是值的主要内容,如果未能解决你的问题,请参考以下文章
NSDictionary setValue:forKey: -- 得到“这个类不是键值编码兼容的键”