NSMutableDictionary值查找

时间:2012-04-20 01:22:54

标签: iphone objective-c ios nsmutabledictionary

查看NSMutableDictionary以查看是否存在与另一个变量对应的键的好方法是什么?

假设我有一个NSString“测试” 和一个可变字典,它有一些值和NSString键用于这些值。

阅读字典值以查看其任何键是否为“test”的好方法。

我是否必须有一个for循环来读取字典值,或者是否已经有一些NSDictionary对象可以执行此操作而我没有看到。

2 个答案:

答案 0 :(得分:3)

您可以使用keysOfEntriesPassingTest:方法查找值等于@"test"的所有键。

在下面的实现中,只会找到第一个键。如果您需要对象为@"Test"的所有密钥,请不要指定*stop

NSString *target = @"test";
NSSet *keys = [myDictionary keysOfEntriesPassingTest:^(id key, id obj, BOOL *stop) {
    return (*stop = [target isEqual:obj]);
}];

答案 1 :(得分:2)

如果您想要的只是其键完全“测试”的那个,我认为您可以使用objectForKey:来尝试获取相应的对象。如果该键不存在,则返回的对象将为nil。

相关问题