Swift中的字典
学习来自《极客学院:Swift中的字典》
工具:Xcode6.4
直接上基础的示例代码,多敲多体会就会有收获:百看不如一敲,一敲就会
import Foundation //字典的声明
var dic1: Dictionary <String,String>
var scores: [String:Int]
//然后是创建字典
dic1 = Dictionary<String,String>()
scores = Dictionary<String,Int>(minimumCapacity: ) var emptyDic: [String : Double] = [:]//空字典
println(emptyDic.isEmpty) //通过常量和变量决定字典是否可变
var person = [ "age":,
"name":"heyang",
"身高":]
println(person["age"]!)
println(person["weight"])//不存在的key,返回为nil
person["name"] = "HeYang"
println(person["name"]!) person["weight"] =
println("字典是无序的:\(person)")//对不存在的key设置value,字典将会添加key-value对 //var height: Int? = person["身高"]会报错,原因是person的元素都是NSObject所以上面的字典person是不严谨的
var person_1 = ["age":"",
"name":"heyang",
"身高":""]
var height_1: String? = person_1["身高"]
if height_1 != nil {
println(height_1!)
}
//updateValue(value: Value, forKey: Key)
if let oldName = person_1.updateValue("", forKey: "身高"){
println("原来的值是:\(oldName)")
}
println("现在的值是:"+person_1["身高"]!) print("遍历:")
for (key,value) in person_1{
print("\(key) : \(value) ")
} println()
//字典删除的方法
person.removeAll(keepCapacity: false)
person_1.removeValueForKey("身高")
println("删除之后person:\(person) 和 person_1:\(person_1)") //取出字典当中的键值对
let keysArr = [String](person_1.keys)
let valuesArr = [String](person_1.values)
println("keysArr: \(keysArr)")
println("valuesArr: \(valuesArr)")
运行输出结果:

Swift中的字典的更多相关文章
- 记OC迁移至swift中笔记20tips
写久了OC后来写swift,总感觉写着是swift的皮毛,但是实际上是OC的核心,这里整理了OC迁移至swift中的一些小细节. 1 在当前类中,实例方法调用属性以及方法都可以将self省略掉,而且是 ...
- Swift中数组和字典都是值类型
在 Swift 中,所有的基本类型:整数(Integer).浮点数(floating-point).布尔值(Boolean).字符串(string).数组(array)和字典(dictionary), ...
- 阿里巴巴最新开源项目 - [HandyJSON] 在Swift中优雅地处理JSON
项目名称:HandyJSON 项目地址:https://github.com/alibaba/handyjson 背景 JSON是移动端开发常用的应用层数据交换协议.最常见的场景便是,客户端向服务端发 ...
- Swift基础--Swift中的异常处理
Swift中的异常处理 OC中的异常处理:方法的参数要求传入一个error指针地址,方法执行完后,如果有错误,内部会给error赋值 Swift中的异常处理:有throws的方法,就要try起来,然后 ...
- Swift微博项目--Swift中通过类名字符串创建类以及动态加载控制器的实现
Swift中用类名字符串创建类(用到了命名空间) OC中可以直接通过类名的字符串转换成对应的类来操作,但是Swift中必须用到命名空间,也就是说Swift中通过字符串获取类的方式为NSClassFro ...
- swift中的结构体和枚举
Swift 里的结构体非常特殊. 类是面向对象编程语言中传统的结构单元.和结构体相比,Swift 的类支持实现继承,(受限的)反射,析构函数和多所有者. 既然类比结构体强大这么多,为什么还要使用结构体 ...
- Swift面向对象基础(上)——Swift中的类和结构体(上)
学习来自<极客学院> import Foundation //1.定义类和结构体 /* [修饰符]calss 类名{ 零到多个构造器 零到多个属性 零到多个方法 零到多个下标 } 修饰符可 ...
- Swift Explore - 关于 Swift 中的 isEqual 的一点探索
在我们进行 App 开发的时候,经常会用到的一个操作就是判断两个对象是否相等.比如两个字符串是否相等.而所谓的 相等 有着两层含义.一个是值相等,还有一个是引用相等.如果熟悉 Objective-C ...
- Swift Tips - 在 Swift 中自定义下标访问
Untitled Document.md input[type="date"].form-control,.input-group-sm>input[type="d ...
随机推荐
- SQL:一句话删除重复的数据
--构造原始数据 )) --插入数据 INSERT INTO #T (N)VALUES ('A') --方式一:一句话删除重复数据(无主键) --方式二:采用CTQ,with的写法删除 ;
- 详解MemCached原理
memcached是一个高性能的分布式内存缓存服务器,memcached在Linux上可以通过yum命令安装,这样方便很多,在生产环境下建议用Linux系统,memcached使用libevent这个 ...
- IEE分月表改造
IEE版本:5.1.40 需求:由于目前的IEE版本并不支持分区表,且删除历史数据效率很低,删除部分数据后空间释放方面也不理想. 现采用按月分表存放数据.这样卸载历史数据时,直接删除历史表即可. 改造 ...
- Tools - Windows
1)文本操作 Ctrl + C / Ctrl + V / Ctrl + X / Ctrl + Z / Ctrl + A:复制/粘贴/剪贴/撤销/全选. 2)窗口左右分屏 Win + 方向键:上(最大化 ...
- Windows平台下ActiveMQ 安装
安装之前需要先确定机器上已经有JVM环境,如果没有则会在安装过程中提示 Unable to execute Java command. 系统找不到指定的文件 第一步:从官网下载ActiveMQ的安装 ...
- 全网最详系列之-倍增求LCA
1,什么是LCA LCA.最近公共祖先.是一个在解决树上问题最强劲有力的一个工具.一般都是指.在一棵树上取两个节点a,b .另一个节点x它满足 x是a与b的祖先而且x深度最大.这个x就是节点a,b的 ...
- JS 中 this上下文对象的使用方式
JavaScript 有一套完全不同于其它语言的对 this 的处理机制. 在五种不同的情况下 ,this 指向的各不相同. 有句话说得很在理 -- 谁调用它,this就指向谁 一.全局范围内 在全局 ...
- ADO.NET---ExcuteScalar()方法复习
ExcuteScalar(),返回的是查询结果的第一行第一列,返回值是object类型,一般用来查询表中有多少条数据,求最大值等 现在我们用ExcuteScalar()做个测试,需求:我要查询学生表里 ...
- 关于PS激活的一些感想(附上PS CC2015)
最近跟着慕课学了一些前端的必备PS技能,就顺道把PS CC2015装上. 安装的过程没什么大问题,最要命的是激活环节!各种踩坑,但万万没想到,最终我还是成功的把它激活了. 本人所安装PS版本信息 好了 ...
- JS Array ECMAScript5 Methods
JavaScript 的新版本(ECMAScript 5)中,为数组新增了一些方法.这些方法包括: forEach(f [,o]): 此方法类似于for/in循环,其作用是遍历整个数组并执行函数的某些 ...