Foundation框架--字典( NSDictionary NSMutableDictionary )
基础知识
1.字典不允许相同的key,但允许有相同的value。
2,字典是无序的,字典不能排序。
3.字典里的内容是成对存在的,不会出现单数。
4.快速创建的方式只适合不可变字典。
不可变字典
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
/***************************必需要掌握的知识*********************************/
NSDictionary *d1=[NSDictionarydictionaryWithObject:@"value"forKey:@"key"];//创建包含一个键值对的字典
NSDictionary *d2=[NSDictionarydictionaryWithObjectsAndKeys:@"a",@"1",@"b",@"2",@"c",@"3", nil];//创建包含多个键值对的字典,前面是值,后面是键
//快速创建字典
NSDictionary *d3=@{
@"1":@"a",
@"2":@"b"
};
NSString *s=[d2 objectForKey:@"1"];//根据字典中key的值取出value
NSString *s1=d2[@"1"];//快速取值的方法
/***************************必需要掌握的知识*********************************/
/****************************了解部分***************************************/
NSArray *arr=[d2 allKeys]; //把字典里全部键放在数组里
for (NSString *k in arr) { //遍历数组找到相应的key
NSLog(@"%@=%@",k,d2[k]);
}
NSArray *arr1=[d2 allValues];
for (int i=0; i<arr.count; i++) {
NSLog(@"%@==%@",arr[i],arr1[i]);
}
//先获取字典中key的枚举器,然后遍历该枚举器,获取key对应的值
NSEnumerator *e = [d2 keyEnumerator];
id obj; //能够接收任何类型数据的对象
while (obj = [e nextObject]) {
NSLog(@"%@ = %@",obj,d2[obj]);
}
/****************************了解部分***************************************/
}
return 0;
}
Foundation框架--字典( NSDictionary NSMutableDictionary )的更多相关文章
- OC中Foundation框架之NSDictionary、NSMutableDictionary
NSDictionary概述 NSDictionary的作用类似:通过一个key ,就能找到对应的value 同样 NSDictionary是不可变的,一旦初始化完毕,里面的内容就无法修改 NSDic ...
- Objective-C( Foundation框架 一 NSDictionary (NSMutaleDictionary))
NSDictionary 不可变的字典 创建字典的方法 // 创建字典的方式 NSDictionary *dy = [NSDictionary dictionaryWithObject:@" ...
- [OC Foundation框架 - 10] NSDictionary
通过唯一的key找到相应的value,类似于Map NSDictionary是不可变的 1.创建 void dicCreate() { //Immutable // NSDictionary *d ...
- Objective-C:Foundation框架-常用类-NSMutableDictionary
直接上代码吧: #import <Foundation/Foundation.h> @interface Student : NSObject @property (nonatomic, ...
- Foundation框架系列-NSDictionary
排序 对字典中的key按照字母升序排序 // NOTE: 排序,得出最终请求字串 NSArray* sortedKeyArray = [[tmpDict allKeys] sortedArrayUsi ...
- OC学习篇之---Foundation框架中的NSDictionary类以及NSMutableDictionary类
今天来看一下Foundation框架中的NSDictionary类,NSMutableDictionary类,这个和Java中的Map类很想,OC中叫字典,Java中叫Map,还有字典是无序的,这个和 ...
- Foundation框架 - NSDictionary类、NSMutableDictionary类
NSArray.NSSet.NSDictionary /* 集合 1.NSArray\NSMutableArray * 有序 * 高速创建(不可变):@[obj1, obj2, obj3] * 高速訪 ...
- 黑马程序员——OC语言Foundation框架 (2) NSArray NSSet NSDictionary\NSMutableDictionary
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)NSArray 1>NSArray :不可变数组 ①创建方法 ...
- Object-c学习之路九(字典(NSDictionary&NSMutableDictionary))
字典的练习和使用(遍历,搜索...)(Student和Book类文件可以查看上篇博客这次不上传了.) // // main.m // NSDictionary // // Created by Wil ...
随机推荐
- Oracle:高效插入大量数据经验之谈
来源于:http://www.cnblogs.com/liwenzhen238/p/3610518.html 在很多时候,我们会需要对一个表进行插入大量的数据,并且希望在尽可能短的时间内完成该工作,这 ...
- git 查看生成对象
1. find . 查看目录中所有对象 2. find .git/objects 查看所有对象 3. git cat-file -p 散列值 输出文件内容
- Linux_RPM_查询
一.查询是否安装 rpm -q 包名 选项: -q 查询(query) 查询所有已安装的RPM包 rpm -qa -a 所有(all) 二.插叙软件包的详细信息 rpm -qi ...
- 【POJ 3415】Common Substrings 长度不小于k的公共子串的个数
长度不小于k的公共子串的个数,论文里有题解,卡了一上午,因为sum没开long long!!! 没开long long毁一生again--- 以后应该早看POJ里的Discuss啊QAQ #inclu ...
- SpringMVC学习系列(8) 之 国际化
一.基于浏览器请求的国际化实现: 1)在 spring的配置文件中添加 <bean id="messageSource" class="org.springfram ...
- Android Studio-目录结构
新建工程项目后AS的Product目录结构如下所示: .idea://AS生成的工程配置文件,类似Eclipse的project.properties. app://AS创建工程中的一个Module. ...
- C# 图片超过指定大小将压缩到指定大小不失真
using System;using System.Collections.Generic;using System.Drawing;using System.Drawing.Drawing2D;us ...
- 【BZOJ-1863】trouble 皇帝的烦恼 二分 + DP
1863: [Zjoi2006]trouble 皇帝的烦恼 Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 559 Solved: 295[Submit] ...
- macOS安装「oh my zsh」
目前常用的 Linux 系统和 OS X 系统的默认 Shell 都是 bash,但是真正强大的 Shell 是深藏不露的 zsh, 这货绝对是马车中的跑车,跑车中的飞行车,史称『终极 Shell』, ...
- 【codevs1993】 草地排水
http://codevs.cn/problem/1993/ (题目链接) 题意 求有向图最大流. Solution Dinic. 代码 // codevs1993 #include<algor ...