【发布时间】:2012-11-04 01:38:06
【问题描述】:
如何获取字典的值而不是循环。我知道如何使用以下方法获取单个值:
NSString *valueStr = [dict objectForKey:@"Key2"];
我需要通过循环所有键来获取,我需要在字典中搜索一个值。
【问题讨论】:
-
请更清楚您要达到的目标。数组是指字典吗?你想获取什么?
如何获取字典的值而不是循环。我知道如何使用以下方法获取单个值:
NSString *valueStr = [dict objectForKey:@"Key2"];
我需要通过循环所有键来获取,我需要在字典中搜索一个值。
【问题讨论】:
由于您似乎正在尝试使用NSDictionary,因此您可能想做这样的事情:
for (NSString *key in [dict allKeys]){
NSLog(@"%@", [dict objectForKey:key]);
}
或者如果您不想使用循环,您可以执行以下操作:
NSArray *keys = [dict allKeys];
NSArray *values = [dict allValues];
【讨论】:
for (NSString *key in <#dictionary#>)
{
<#!loopcontents#>
[dictionary objectForKey:key]
}
【讨论】:
您似乎有一个NSDictionary,您可以通过以下方式访问所有键/值:
NSArray *keys = [dict allKeys];
NSArray *values = [dict allValues];
当然,您可以使用
循环遍历该键值对for (NSString *key in [dict allKeys]) {
//get value
NSString *value = [dict objectForKey:key];
//print to log
NSLog (@"%@, %@", key, value);
}
【讨论】:
结合来自 Omarj 和 Rene 的答案:
for (NSString *key in [dict allKeys])
{
NSString *value = [dict objectForKey:key];
}
【讨论】: