Swift中字典的介绍以及声明
//: Playground - noun: a place where people can play
import UIKit
//字典也叫map 映射
//声明个空的字典
var Dict0 = Dictionary<Character, Any>()
Dict0.isEmpty //true
//可以直接给字典添加⼀个key和⼀个value
Dict0["笑"] = "smile"
//??运算符(类似三⽬运算符) 意思是当⽤这个键取到的值是nil的时候 可以付给其⼀个⾃⼰定义的值 即下⾯的"nothing" 只能⽤于optional 形式的数据
print(Dict0["笑"] ?? "nothing")
//其中key是hashable的即哈希函数保存 所以不可通过value逆推key
let Dict = ["苹果":"apple","桃⼦":"peach","菠萝":"pineapple"]
//以下两种声明⽅法
let emptyDict1: [String : String] = [:]狩猎聚会
quite的用法let emptyDict2: Dictionary< String , String> = [:]
//打印可以看出 取出来的值是optional可选型 因为取出来的value可能是空 ⽽且可能key值也不存在呢
for key in Dict.keys{
//系统不知道这个取出来的optional类型的值是空还是什么 所以会报debug警告防⽌其值为nil 可见swift是⼗分anquan
// print("\(key) : \(Dict[key]))")melee是什么意思
//可以⽤下⾯两种⽅法消除警告 都是为了防⽌其值为nil
deaf是什么意思print("\(key) : \(String(describing: Dict[key])))")
print("\(key) : \(Dict[key] ?? "nothing"))")
}
//字典的安全取值 同样适⽤于其他optional变量 这⾥如果取出来的值是nil 那就不会执⾏{}代码块
if let value = Dict["苹果"]{
print(value)
}
for value in Dict.values{
二次函数顶点坐标式print(value)
}
let Dict1 = ["苹果":"apple","桃⼦":"peach","菠萝":"pineapple"]
let Dict2 = ["苹果":"apple","桃⼦":"peach","菠萝":"pineapple"]
英语在线翻译语音
cimrDict1==Dict2
//注意dictionary是随机存储的 所以打印出来与其开始书写程序不同
for item in Dict {
print(item)
}
//下⾯是增删查改操作
var ur : [NSString:NSString] = ["urname":"Daniel" , "BirthDay":"2.11" , "habit":"play guitar"] //增加
can的过去式
ur["Sex"]="male"
//调⽤update⽅法如果没有找到该键 会⾃动增加⼀个键
ur.updateValue("leftHand", forKey: "girlfriend")
let oldgirlfriend = ur["girlfriend"]
ur.updateValue("rightHand", forKey: "girfriend")
//注意swift2.0 中if-let-where 语句简化成 if-let-, 了
if let newgirlfriend = ur["girfriend"], oldgirlfriend != newgirlfriend {
print("Daniel has change a girlfriend")
}
钱用英语怎么说//改
ur["habit"]="code"
ur.updateValue("play football", forKey: "habit")
//删除
ur["habit"]=nil财税2008 170号
ur