0

令人困惑的解释:我试图通过 NSMutableDictionary 迭代一个 for 循环,查看它的“键”值,并将这些值与第二个 NSMutableDictionary 的“键”值进行比较。如果有匹配项(它们是字符串比较),我希望将两个字典的“对象”添加到单独的数组中。

澄清一下,字典 A 和 B 都包含单词列表(对象)和按字母顺序排列的单词(键),如下所示:

苹果 = aelpp 番茄 = amoott stack = ackst

所以我需要将“aelpp”与“amoott”进行比较,然后存储“apple”和“tomato”。

基本问题是:当使用 for 循环 ( for (NSString *currentWord in dictionaryA)) 时,如何具体引用字典 A 的对象或键?我需要它来比较键,但如果它们匹配,则存储对象。

如果有什么需要进一步澄清,请询问:)

4

2 回答 2

0

要回答您的“基本问题”:快速枚举NSDictionary枚举字典

for (NSString *keyA in dictionaryA) {
    NSString *valueA = [dictionaryA objectForKey:keyA];
    // Now keyA : valueA is one key-value pair of dictionaryA ...
}

(假设所有键和值都是字符串)。

于 2012-11-13T18:31:40.000 回答
0

如果您想同时在 Key 和 Values 之间进行迭代,请使用以下命令:

[dictionaryA enumerateKeysAndObjectsUsingBlock:^(NSString * keyA,
                                                   id valueA,
                                                   BOOL *stop) {
    // You have at the same time access to keyA and valueA
}];
于 2015-01-23T23:18:36.543 回答