字典的常用基本用法

 //五、不可变字典

        //key 通过哈希算法算出一个数作为一个索引下标,把值存到相应的位置,在内存中是散列结构,即无序

  // 2016年06月27日08:57:22

     //字典无法显示中文问题,建议使用类别来重写description方法。

        //使用实例方法创建字典

        

        NSDictionary *dic = [[NSDictionary alloc]initWithObjectsAndKeys:@"key1",@"value1",@"key2",@"value2",@"key3",@"value4",@"key4",@"value4",@"key5",@"value5",@"key6",@"value6", nil];

        

          NSLog(@"实例方法字典%@",dic);

        

        

        // 使用类方法创建字典 //字典中 值在前面,键在 后面

        NSDictionary *dic1 = [NSDictionary dictionaryWithObjectsAndKeys:@"姓名",@"小明",@"性别",@"",@"学校",@"北大",@"年级",@"大三",@"奖学金",@"获得了",@"班干部",@"不是", nil];

        

        NSLog(@"类方法字典%@",dic1);

        

        NSDictionary *dic2 = [NSDictionary dictionaryWithObject:@"1" forKey:@"2"];

        

     

        //存放键的数组

        NSArray *keyArray = [NSArray arrayWithObjects:@"K1",@"K2",@"K3",nil];

        //存放值的数组

        NSArray *valueArray = [NSArray arrayWithObjects:@"v1",@"v2",@"v3",nil];

        //把数组放进字典里

        NSDictionary *dic3 = [NSDictionary dictionaryWithObjects:valueArray   forKeys:keyArray];

       // 体现了字典是哈希表,无序的

        NSLog(@"%@",dic3);

        

 

        //使用一个文件创建字典对象  新建文件步骤:command + N -> Resource -> Property List

        

        NSDictionary *dictionary = [NSDictionary dictionaryWithContentsOfFile:@"新建文件步骤:command + N -> Resource -> Property List"];

        

        NSLog(@"使用文件%@",dictionary);

        

        //获取字典中指定key的对应的value

        

        NSString *value = [dic1 objectForKey:@"小明"];

        

        NSLog(@"根据指定KEY值获取value%@",value);

        

        

        //  返回所有的key数组

        

        NSArray *allKeysArray = [dic allKeys];

        

        NSLog(@"返回所有的key数组%@", allKeysArray);

        

        

        

        //  返回所有的value数组

        

        NSArray *allValuesArray = [dic allValues];

        

        NSLog(@"返回所有的value%@", allValuesArray);

        

    //六、创建可变字典

        

        

        NSMutableDictionary *mutabledic1 = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"mv1",@"mk1",@"mv2",@"mk2", nil];

        

        NSLog(@"可变字典1%@",mutabledic1);

        

        

        

        //实例方法

        NSMutableDictionary *mutabledic2 = [[NSDictionary alloc]initWithObjectsAndKeys:@"mv3",@"mk3",@"mv4",@"mk4", nil];

        

        

        NSLog(@"可变字典2%@",mutabledic2);

    

        //用于整理对象的拼接

        

        [mutabledic1 addEntriesFromDictionary:mutabledic2];

        NSLog(@"用于整理对象的拼接%@",mutabledic1);

        

        

        

        //  删除字典中某个对象

        

        [mutabledic1 removeObjectForKey:@"mk1"];//注意后面的是KEY

        

        NSLog(@"删除字典中某个对象%@", mutabledic1);

        

        

        

        //  删除字典全部对象

        

        [mutabledic1 removeAllObjects];

        

        NSLog(@"删除字典全部对象%@", mutabledic1);

        

        

        

        //  设置字典(把字典2放入空字典1中)

        

        [mutabledic1 setDictionary:mutabledic2];

        

        NSLog(@"设置字典%@", mutabledic1);

        

        

        

        

        

原文地址:https://www.cnblogs.com/DafaRan/p/5690451.html