Objective-C 字典、可变字典
字典相当于c++ stl中的map
字典NSDictionary
#import <UIKit/UIKit.h>
#import "AppDelegate.h" int main(int argc, char * argv[]) {
// 从@符号创建字典 实际上就是键值对容器
NSDictionary *dict = @{@"name":@"zhangsan",@"sex":@"male"};
NSLog(@"%@",dict); // 根据键获取值
NSLog(@"%@",[dict objectForKey:@"name"]); // 从配置文件中读取
NSDictionary *dict1 = [NSDictionary dictionaryWithContentsOfFile:
[[NSBundle mainBundle] pathForResource:@"data" ofType:@"plist" ]];
NSLog(@"%@",[dict1 objectForKey:@"name"]);
NSLog(@"%@",[dict1 objectForKey:@"age"]); @autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}
可变字典 NSMutableDictionary
NSMutableDictionary *dict2 = [[NSMutableDictionary alloc]init];
// setObject 可以新增key 也可以修改已有key的值
[dict2 setObject:@"jinpangpang" forKey:@"name"];
[dict2 setObject:@"" forKey:@"name"];
NSLog(@"%@",[dict2 objectForKey:@"name"]);
Objective-C 字典、可变字典的更多相关文章
- objective-c可变字典
1 #pragma mark *****************************字典******************************** 2 // 字典:通过ke ...
- OC中NSDictionary(字典)、NSMutableDictionary(可变字典)、NSSet(集合)、NSMutableSet(可变集合)得常用方法
字典用于保存具有映射关系数据的集合 一个key—value对认为是一个条目(entry),字典是存储key—value对的容器 与数组不同,字典靠key存取元素 key不能重复,value必须是对象 ...
- 可变字典 NSMutableDictionary
存到nsuesrDefault里面一个可变字典,然后用一个可变字典去接收. NSMutableDictionary *dic = [[NSUserDefaults standardUserDefaul ...
- OC基础 可变字典与不可变字典的使用
OC基础 可变字典与不可变字典的使用 1.不可变字典 1.1创建不可变字典 //创建字典 //注意: //1,元素个数是偶数 //2,每两个元素是一个键值对 //3,值在前,键在后 NSDiction ...
- iosOC不可变字典和可变字典
//key 和 value 都属于(id)对象类型 //key常用字符串NSString来表示 //存储数值型 一般可用 NSString //int age ->@(age) // [di ...
- iOS 多线程安全 与 可变字典
这周最大的收获是稍稍通透了 多线程安全字典的重要性. 诱因是,发现了有字典坏地址错误 果断以为是 value 或者 key 是可能出现了空值,补充了潜在的判断,虽然有的位置已经预判断的,但 ...
- NSDictionary字典创建,获取,遍历,可变字典的删除 - iOS
字典是以键值对的形式来存储数据 key value 1 NSDictionary 字典 1.1 创建字典,不可变的 NSDictionary * dic = [NSDictionary diction ...
- python 不可变字典 inmutabledict的实现
python inmutabledict的实现 关于在python中如何实现不可变字典的方法.早在pep416中,就建议python官方实现inmutabledict,但是官方否认了.理由主要是 根据 ...
- day 05 字典,字典嵌套
字典: 1.列表如果存储大量数据,查询速度相对慢一些 2.列表存储的数据,一般没有什么关联性 针对以上原因,python提供了一个基础数据类型,dict 字典 数据类型的分类 : 容器型数据类型:li ...
随机推荐
- C#显示声名接口就是为了解决方法重名的问题
class class1 { public static void Main(string[] args) { Person ps = new Person(); ps.KouLan(); IFlya ...
- c笔试题(1)
1.sizeof和strlen的区别 #include<stdio.h> #include<string.h> int main() { char a[10] = " ...
- dede后台反应特别慢-转
找到织梦后台管理目录下的/templets/index_body.htm文件 将第25行至第35行部分js代码注释掉. 就这么简单
- html5标签placeholder使用
<!DOCTYPE HTML> <html> <body> <form action="/example/html5/demo_form.asp&q ...
- 命令提示符CMD远程连接Mysql学习笔记
我想要用Cmd可以像SecureCRT一样远程连接数据库,查询数据,因为用cmd的话可以用批处理,方便脚本调用 第一步:直接使用命令 mysql –h ip –u user –p,本地运行了该命令提示 ...
- zlog小试(C语言日志工具)
test.c #include <stdio.h> #include "zlog.h" int main(int argc, char** argv) { int rc ...
- PYTHON线程知识再研习B
使用threading.Thread模块,也有两种使用方法,可以用类,也可以在实例化对象中传入函数或类实例. #!/usr/bin/env python # -*- coding: utf-8 -*- ...
- JavaScript中的Array对象
1.创建Array对象创建Array对象的语法var 数组名 = new Array();定义数组之后,就需要向数组中添加元素,格式如下数组名[<下标>]=值: 2.Array对象属性Ar ...
- mysql sql优化<1>
<pre name="code" class="html">explain SELECT t.* FROM ( SELECT t1.sn AS cl ...
- 【转】 ubuntu12.04更新源 官网和163等
原文网址:http://blog.csdn.net/zhangliang_571/article/details/8813999 分类: LINUX 摘要: 本文列出ubuntu 12.04 LTS更 ...