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);

            }];

  • 相关阅读:
    linux 添加、删除 route
    linux 添加、删除 ip
    oracle virtualbox 添加共享硬盘2
    centos 7.4 + udev + 12.2.0.1 + asm 单点安装
    initdb 简介
    EBS 修改数据库用户apps、网页登录用户sysadmin密码
    postgresql 的几个 timeout 参数
    postgresql 控制命令执行时长 statement_timeout
    postgresql 连接客户端存在 CLOSE_WAIT、TIME_WAIT 状态
    postgresql lsn/location 获取 wal/xlog 文件名
  • 原文地址:https://www.cnblogs.com/liuguan/p/4914428.html
Copyright © 2011-2022 走看看