OC基础-OC三大基本数据结构-NSDictionary

一、Dictionary概述

字典中的元素是以键值对的形式存储的。如@"诗未冷"和@"1"组成了一个键值对。@"诗未冷"是value,@"1"是key。键值对的值和键可以是任意对象,但是键一般都使用字符串。

字典存储对象的地址是没有顺序的。


二、Dictionary的使用

//1.创建字典对象
        NSDictionary * dictionary = [[NSDictionary alloc] initWithObjectsAndKeys:@"One", @"1", @"Two", @"2", @"Three", @"3", nil];
        
        //2.直接输出字典对象。以数组的形式,输出键值对
        NSLog(@"直接输出对象:%@", dictionary);
        
        //3.遍历:枚举器法。
        //使用objectEnumerator值枚举器输出值,使用keyEnumerator键枚举器输出键
        NSEnumerator * enumerator = [dictionary objectEnumerator];
        id obj;
        while (obj = [enumerator nextObject]){
            NSLog(@"枚举器法:%@",obj);
        }
        
        NSString * str = [dictionary objectForKey:@"1"];
        NSLog(@"根据键找到值:%@", str);
        
        //3.遍历:快速枚举法
        for(id obj in dictionary){
            NSLog(@"快速枚举法键:%@", obj);
            NSLog(@"快速枚举法值:%@", [dictionary objectForKey: obj]);
        }
        [dictionary release];


三、NSMutableDictionary的使用

        //创建对象
        NSMutableDictionary * mutableDictionary = [[NSMutableDictionary alloc] init];
        //增加键值对
        [mutableDictionary setObject:@"one" forKey:@"1"];
        [mutableDictionary setObject:@"two" forKey:@"2"];
        [mutableDictionary setObject:@"three" forKey:@"3"];
        
        //直接输出可变字典对象
        NSLog(@"直接输出可变字典:%@",mutableDictionary);
    
        //删除键值对
        //[mutableDictionary removeAllObjects];
        //[mutableDictionary removeObjectForKey:@"1"];
        
        
        [mutableDictionary release];

@诗未冷学习博客


你可能感兴趣的:(OC基础-OC三大基本数据结构-NSDictionary)