1224字典dictionary

不可变词典NSDictionary

字典没有顺序可言,键值对

Key-Value

键(字符串对象)-值(对象)

0.字典里面多个键值对的值可以相同,但是键不能相同,必须唯一

1.字典存储的优势

  a.方便查找

  b.方便删改

2.如何创建一个字典

  NSDictionary *dic = @{@"小王":xw,@"张三":zs,@"ls":ls};

  NSDictionary *dic1 = [NSDictionary dictionary];

NSDictionary *dic1_ = [[NSDictionary alloc]init];

NSDictionary *dic2 = [NSDictionary dictionaryWithDictionary:dic];

NSDictionary *dic2_ = [[NSDictionary alloc]initWithDictionary:dic];

初始化一个键值对

NSDictionary *dic3 = [NSDictionary dictionaryWithObject:xw forKey:@"小王"];

创建拥有多个键值对的字典

NSDictionary *dic4 = [NSDictionary dictionaryWithObjects:@[xw,zs,ls] forKeys:@[@"xiaowang",@"zhangsan ",@"lisi "]];

3.获取字典键值对个数

NSLog(@"count:%ld",dic5.count);

4,获取所有的键keys(字符串对象)

NSArray*allKeys = [dic5 allKeys];

5,获取所有的value

NSArray *allValues = [dic5 allValue];

6.遍历一个字典

for (NSString *key in allkeys){

NSLog(@"key = %@:value = %@",key,[dic5 objectForKey:key]);

}

7,通过key获取对应的value

NSArray *tempArray = [dic5 objectForKey:@"man"]);

NSMubtableDictionary

1.创建可变字典

NSMutableDictionary *mDic = [NSMutableDictionary dictionaryWithCapacity:0];

2.添加键值对

[mDic setObject:@"yql" forKey:@"name"];

[mDic setObject:pArray forKey:@"man"];

[mDic setObject:@"红楼梦" forKey:@"名著"];

NSLog(@"7.%@",mDic);

3.更改某个键对应的值

[mDic setObject:@"hongloumeng" forKey:@"名著"];

4.删除键值对

[mDic removeObjectsForKeys:@"名著"];

[mDic removeObjectsForKeys:@[@"man",@"nb",@"hel"]];

[mDic removeAllObjects];

NSLog(@"8..%@",mDic);

时间: 2024-10-23 01:13:35

1224字典dictionary的相关文章

Python 字典(Dictionary) get()方法

描述 Python 字典(Dictionary) get() 函数返回指定键的值,如果值不在字典中返回默认值. 语法 get()方法语法: dict.get(key, default=None) 参数 key -- 字典中要查找的键. default -- 如果指定键的值不存在时,返回该默认值值. 返回值 返回指定键的值,如果值不在字典中返回默认值None. 实例 以下实例展示了 get()函数的使用方法: #!/usr/bin/python dict = {'Name': 'Zara', 'A

Swift 集合类型(Collection Type) 之 字典(dictionary)(官方文档翻译及总结)

Swift语言提供经典的数组和字典两种集合类型来存储集合数据.数组和字典中存储的数据值类型必须明确.这意味着我们不能把不正确的数据类型插入其中.Swift对显式类型集合的使用确保了我们的代码对工作所需要的类型非常清楚.也让我们在开发中可以早早的找到任何的类型不匹配错误.如果你用变量(var)创建的集合,这些集合就是可变的(增删改).如果用常理创建的,这些集合是不能被操作的. 注意: 如果集合的元素是不变的,那就将集合声明为常量.这样Swift编译器能对你创建的集合做性能优化. 1. 数组(arr

Python 字典(Dictionary) setdefault()方法

描述 Python 字典(Dictionary) setdefault() 函数和get()方法类似, 如果键不已经存在于字典中,将会添加键并将值设为默认值. 语法 setdefault()方法语法: dict.setdefault(key, default=None) 参数 key -- 查找的键值. default -- 键不存在时,设置的默认键值;存在则不设置. 返回值 该方法没有任何返回值. 实例 以下实例展示了 setdefault()函数的使用方法: #!/usr/bin/pytho

索引器、哈希表Hashtabl、字典Dictionary(转)

一.索引器 索引器类似于属性,不同之处在于它们的get访问器采用参数.要声明类或结构上的索引器,使用this关键字. 示例: 索引器示例代码 /// <summary>/// 存储星期几的类.声明了一个get访问器,它接受字符串,并返回相应的整数/// </summary>public class 星期{    public string[] weeks = { "星期日", "星期一", "星期二", "星期三

c# 关于字典dictionary 按时间排序

上文中说到sortedlist 排序是键排序,不符合项目要求问题,接着使用字典dictionary 对value 为时间按照升序排序,问题解决.中间涉及到linq的使用.还有其他的写法,但发现下边的写法最直观也容易理解.var dicSort = from objDic in dic orderby objDic.Value descending select objDic; 这种写法最简单,也容易理解dicsort 目标字典,objdic对象应该是映射的无需定义的对象,dic 是你自己定义的字

C#中数组、集合(ArrayList)、泛型集合List&lt;T&gt;、字典(dictionary&lt;TKey,TValue&gt;)全面对比

为什么把这4个东西放在一起来说,因为c#中的这4个对象都是用来存储数据的集合--. 首先咱们把这4个对象都声明并实例化一下: //数组 string[] m_Str = new string[5]; //集合 ArrayList m_AList = new ArrayList(); //泛型集合 List<int> m_List = new List<int>(); //字典 Dictionary<int, string> m_Dt = new Dictionary&l

C#字典Dictionary排序(顺序、倒序)

这里是针对.NET版本过低的排序方式,没怎么用过,记录一下: 一.创建字典Dictionary 对象 假如 Dictionary 中保存的是一个网站页面流量,key 是网页名称,值value对应的是网页被访问的次数,由于网页的访问次要不断的统计,所以不能用 int 作为 key,只能用网页名称,创建 Dictionary 对象及添加数据代码如下: Dictionary<string, int> dic = new Dictionary<string, int>(); dic.Add

C#创建安全的字典(Dictionary)存储结构

在上面介绍过栈(Stack)的存储结构,接下来介绍另一种存储结构字典(Dictionary). 字典(Dictionary)里面的每一个元素都是一个键值对(由二个元素组成:键和值) 键必须是唯一的,而值不需要唯一的,键和值都可以是任何类型.字典(Dictionary)是常用于查找和排序的列表. 接下来看一下Dictionary的部分方法和类的底层实现代码: 1.Add:将指定的键和值添加到字典中. public void Add(TKey key, TValue value) {        

Python 字典(Dictionary)day11

字典是另一种可变容器模型,且可存储任意类型对象,如其他容器模型. 字典由键和对应值成对组成.字典也被称作关联数组或哈希表.基本语法如下: dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'} 也可如此创建字典: dict1 = { 'abc': 456 };dict2 = { 'abc': 123, 98.6: 37 }; 每个键与值用冒号隔开(:),每对用逗号,每对用逗号分割,整体放在花括号中({}). 键必须独一无二,但值则不必.