//字典
//声明
//1.泛型语法声明
var myDict : Dictionary<String,String>
//2.使用简化语法声明
var dictText : [String:Int]
var dictText1 : [String:String]
//赋值
//1.创建一个字典结构体,使用默认的参数
myDict = Dictionary<String,String>()
println(myDict)//[:]
dictText = Dictionary<String,Int>(minimumCapacity: 5)
println(dictText)
//2.使用简化语法创建字典
dictText1 = ["high":"20","fat":"110"]
println(dictText1)//[fat: 110,high: 20]
//创建不包含任何key-value对的字典
var emptyDic : [String:Double] = [:]
//isEmpty属性可判断数组,字典是否不包含任何元素
println(emptyDic.isEmpty) //true
var em : [String:String]
em = Dictionary()
println(em.isEmpty)
//字典的使用
var high = dictText1["high"]
println(high)//Optional("20")
//访问不存在的key返回nil
var tro = dictText1["tro"]
println("\(tro)")//nil
//修改指定的key对应的value
dictText1["fat"] = "200"
println(dictText1)//[fat: 200,high: 20]
//如果key不存在,则添加
dictText1["pressure"] = "112"
println(dictText1)//[fat: 200,high: 20,pressure: 112]
//如果需要返回key对应的value需要加“!”强制解析
var englis : String? = dictText1["high"]
if englis != nil
{
println(englis!)
}
var result = dictText1.updateValue("289",forKey: "fat")
println("result is \(result)")//result is Optional("200")
println(dictText1)//[fat: 289,pressure: 112]
/** for in遍历字典 */
var seasons = ["a":"测试","b":"summer","c":"autumn"]
/** * b:summer a:测试 c:autumn */
for (season,desc) in seasons
{
println("\(season):\(desc)")
}
/** 单独使用字典的keys和values */
var keys = Array(seasons.keys)
var valuess = Array(seasons.values)
println("\(keys)....\(valuess)")//[b,a,c]....[summer,测试,autumn]
//删除
seasons.removeValueForKey("d")
/** [b: summer,a: 测试,c: autumn] */
println(seasons)
seasons.removeValueForKey("c")
//[b: summer,a: 测试]
println(seasons)
//通过将value赋值为nil来删除
seasons["b"] = nil
println(seasons)//[a: 测试]
部分内容来自于<疯狂Swift讲义>