import Foundation
//字典 元素顺序是无序的
//1.字典元素是键值对 (key:value)
//key 一定是可哈希的 string\int\bool
var dic1=["name":"lsq"]
println(dic1["name"])
//完整的定义方式
var dic2: Dictionary<String,Any>=["a":,"b":"b"]
println(dic2)
//2.字典的操作
var dic3=["apple":"苹果","bag":"包"]
println(dic3["apple"])//查询
dic3["apple"]="栗子"//修改
println(dic3["apple"])
dic3.updateValue("苹果", forKey: "apple")//保存,返回键值对 可选类型的值 更新失败返回值是nil
println(dic3["apple"])
println(dic3["apples"])//访问不存在的key得到的是一个空 nil
dic3.updateValue("苹果aaa", forKey: "apples")//修改,返回键值对 可选类型的值 更新失败返回值是nil 如果没有该元素则新增
println(dic3)
dic3["lsq"]="刘世群" //新增一个元素
println(dic3)
dic3.removeValueForKey("lsq")//删除指定的key 返回被移除的键值 如果key不在字典中返回nil
println(dic3)
//dic3.removeAll(keepCapacity: true)//全部删除 与数组一样 参数表示是否保留字典容量
//字典的遍历
for (key,value) in dic3 {
println("key:\(key) value:\(value)")
}
//keys values
println(Array(dic3.keys))
println(dic3.values)
for key in dic3.keys{
println(key)
}
for value in dic3.values{
println(value)
}