zoukankan      html  css  js  c++  java
  • Objective-C之字典

            //字典:(关键字 值)

    //插入代码字太小

    //        NSArray *array = [NSArray array];//空数组

    //        NSDictionary *dictionary = [NSDictionary dictionary];//空字典

            NSDictionary *my = [NSDictionary dictionaryWithObject:@"objective" forKey:@"key"];

                                NSLog(@"%@",my);

            NSDictionary *to = [NSDictionary dictionaryWithObjectsAndKeys:@"123",@"abc",@"456",@"efg" ,nil];//创建包含多个值的字典

            NSLog(@"%@",to);

            NSDictionary *me = @{

                                   @"a":@"1",

                                   @"b":@"2"

                                 };

            NSLog(@"%@,%li",me,me.count);

            NSString *s = [me objectForKey:@"a"];//键值对应的对象

            NSString *ss = me[@"b"];//跟数组差不多

            NSLog(@"%@,%@",ss,s);

            

    //        NSArray *keyArr = [me allKeys];

    //        for(NSString *key in keyArr)

    //        {

    //            NSLog(@"%@ = %@",key,me[key]);

    //        }

          

            NSDictionary *niubi = [NSDictionary dictionaryWithObjectsAndKeys:@"liyuanfang",@"direnjie",@"Moran ",@"fuermosi",@"kenanfushou",@"kenan" ,nil];//创建包含多个值的字典

            NSArray *keyArr = [niubi allKeys];//取字典中的所有键值

            for(NSString *key in keyArr)

            {

                NSLog(@"%@问%@这事你怎么看?",key,niubi[key]);

            }

    /**********************************************************************************/

            //取出字典中所有的值

            NSArray *valueArr = [me allValues];

            NSLog(@"取字典中的所有键对应的值%@",valueArr);

            

            //字典既然存在,那么开发者肯定想到要方便的使用它

            //然而就有了,可以独立取出键或值的方法:allKeys和allValues

            //因为他们是数组属性,所以需要放到新建的数组对象中

            

            //枚举器中OC语言中一个遍历的有效方法,

            //应用时,一般先通过.....Enumerator获取枚举器,存放到其对应的类型NSEnumerator对象中

            //这个对象会有一个自动向下遍历的方法nextObject

            //先获取字典中key的枚举器,然后遍历该枚举器,获取key对应的值

            NSEnumerator *e = [me keyEnumerator];

            id obj;        

            while (obj = [e nextObject]) {

                NSLog(@"%@ = %@",obj,me[obj]);

            }

            

            //获取value对应的枚举器

            NSEnumerator *a = [me objectEnumerator];

            while(obj = [a nextObject])

            {

                NSLog(@"%@",obj);

            }

            

            //键和对象列举块,stop代表遍历停止

            

            [me enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {

                

                NSLog(@"key=%@,value = %@",key,obj);

            }];

  • 相关阅读:
    selet 语句详解
    第三章 sql 的约束
    第二章 创建数据库并插入数据
    第一章
    微信小程序(九)
    微信小程序(七)
    微信小程序(八)
    微信小程序(六)
    bzoj4622 [NOI 2003] 智破连环阵
    bzoj3996 [TJOI2015]线性代数
  • 原文地址:https://www.cnblogs.com/liuguan/p/4914428.html
Copyright © 2011-2022 走看看