//字典:(关键字 值)

//插入代码字太小

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

}];

Objective-C之字典的更多相关文章

  1. Automake

    Automake是用来根据Makefile.am生成Makefile.in的工具 标准Makefile目标 'make all' Build programs, libraries, document ...

  2. 【DG】Oracle_Data_Guard官方直译

    [DG]Oracle Data Guard官方直译 1 Oracle Data Guard 介绍   Oracle Data Guard概念和管理10g版本2   Oracle Data Guard ...

  3. DVWA实验之Brute Force(暴力破解)- Low

    DVWA实验之Brute Force-暴力破解- Low     这里开始DVWA的相关实验~   有关DVWA环境搭建的教程请参考: https://www.cnblogs.com/0yst3r-2 ...

  4. Oracle错误览表

    Oracle 错误总结及问题解决 ORA     本文转自:https://www.cnblogs.com/zhangwei595806165/p/4972016.html  作者@承影剑 ORA-0 ...

  5. Objective -C学习笔记之字典

    //字典:(关键字 值) // NSArray *array = [NSArray array];//空数组 // NSDictionary *dictionary = [NSDictionary d ...

  6. 字典转模型框架 Mantle的使用:国外程序员最常用的iOS模型

    Mantle简介 Mantle 是iOS和Mac平台下基于Objective-C编写的一个简单高效的模型层框架. Mantle能做什么 Mantle可以轻松把JSON数据.字典(Dictionary) ...

  7. Objective C笔记(第一天)

    • OC语言概述 1.早在20世纪80年代早期,Bard Cox发明了Objective C, 是扩充的C,面向对象的编程语言. 2.NEXTSTEP简称NS a.1985年,Steve Jobs成⽴ ...

  8. IOS NS 字符串 数组 字典 文件 动态 静态 操作

    ios 常用字符串的操作   //将NSData转化为NSString        NSString* str = [[NSString alloc] initWithData:response e ...

  9. Mantle--国外程序员最常用的iOS模型&字典转换框架

    Mantle简介 Mantle是iOS和Mac平台下基于Objective-C编写的一个简单高效的模型层框架. Mantle能做什么 Mantle可以轻松把JSON数据.字典(Dictionary)和 ...

随机推荐

  1. 重叠(Overlapping) NAT

    当内部网络也使用公网注册地址(或者是外网合法地址)时,如果仍使用标准的静态或者动态NAT转换,则可能使得转换的内网地址与外网中合法地址冲突,使数据包又返回到了本地网络,这肯定是不行的.这时我们就要使用 ...

  2. 边界网关协议BGP

    Border Gateway Protocol (BGP) is a standardized exterior gateway protocol designed to exchange routi ...

  3. Java--笔记(4)

    31.中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源.中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯.是连接两个独立应用程序或独立系统的软 ...

  4. mysql 备份恢复图

    http://blog.csdn.net/oldboy8/article/details/8294631

  5. 【线性规划与网络流 24题】已完成(3道题因为某些奇怪的原因被抛弃了QAQ)

    写在前面:SDOI2016 Round1滚粗后蒟蒻开始做网络流来自我拯救(2016-04-11再过几天就要考先修课,现在做网络流24题貌似没什么用←退役节奏) 做的题目将附上日期,见证我龟速刷题. 1 ...

  6. The resource identified by this request is only capable of generating responses with characteristics

    [转]今天在调试springMVC的时候,在将一个对象返回为json串的时候,浏览器中出现异常: The resource identified by this request is only cap ...

  7. 100803C

    画个图,很容易发现少兜圈子,就是说这些限制c[i],d[i]可以看做[c[i],d[i]],不让那些区间相交,然后就可以了 #include<iostream> #include<c ...

  8. 【收藏】Android更新UI的几种常见方法

    ----------------将会调用onDraw()重绘控件---------------- 1.view.invalidate刷新UI(主线程)   2.view.postInvalidate刷 ...

  9. 绘图: Shape, Path

    Shape - 图形 Path - 路径 示例1.演示“Shape”相关知识点Drawing/Shape.xaml <Page x:Class="Windows10.Drawing.S ...

  10. Linux上服务的启动,停止和重启

    (1)查看所有的服务 [berry@berry:practice] service Usage: service < option > | --status-all | [ service ...