首页 > 代码库 > NSDictionary使用快速枚举方法

NSDictionary使用快速枚举方法

上一章我们通过一个枚举器访问并返回字典里的键值, 现在我们通过快速枚举来查找键对应的值.

涉及到的方法:

objectForKey: 这个方法的意思是返回一个值给对应的键, 下面使用了两次这个方法, 第一次没在循环里面使用, 输入了值@"1", 对应的值就是@"One".

PS: 在这里, 我们找到了键, 就代表找到了值.

下面是例子:

#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {    @autoreleasepool {        //字典的快速枚举法和数组里的快速枚举法是一样的.        NSDictionary *dicti = [[NSDictionary alloc]initWithObjectsAndKeys:@"One", @"1", @"Three", @"3",@"Two", @"2", nil];        //字典和数组唯一不同的是, 数组要求顺序, 字典不用要求, 而且字典可以快速查找某一个键.        //通过键, 我们可以快速的找到值        NSString *str = [dicti objectForKey:@"1"];                NSLog(@"str = %@", str);                //快速枚举法 这里会找到键, 找到了键也就是得到了值        for(id obj in dicti)        {            NSLog(@"key = %@", obj);            NSLog(@"object = %@", [dicti objectForKey:obj]);        }    }    return 0;}

输出的结果:

2014-10-13 21:10:18.844 RapidEnumNSDictionary[6705:303] str = One2014-10-13 21:10:18.845 RapidEnumNSDictionary[6705:303] key = 12014-10-13 21:10:18.845 RapidEnumNSDictionary[6705:303] object = One2014-10-13 21:10:18.846 RapidEnumNSDictionary[6705:303] key = 32014-10-13 21:10:18.846 RapidEnumNSDictionary[6705:303] object = Three2014-10-13 21:10:18.846 RapidEnumNSDictionary[6705:303] key = 22014-10-13 21:10:18.846 RapidEnumNSDictionary[6705:303] object = TwoProgram ended with exit code: 0

 

NSDictionary使用快速枚举方法