/*
*
*要正确使用字典,也需要一些条件
* 1,字典键值对的键和值的类型必须明确,可以直接指定,也可以类似数组直接赋值由编译器自动识别
* 2,字典必须要初始化
* 3,键的类型必须是可以被哈希Hashable的(基本数据类型和可以被哈希的类)
*
*/
//字典的几种声明方式
var dic1=[1:1,2:12,3:32,4:16,5:15] var dic2:Dictionary<String,String>=[:] var dic3=Dictionary<String,String>() var dic4=[String : String]()
//1 读取字典元素 var test1Dic=["key1":"你好","key2":"Swift","key3":"正在学习","key4":"字典","key5":"取值",] var test1Str=test1Dic["key2"] println("\(test1Str)") //此处取字典中未定义的键 不会报错,取出来的值为nil var test1Str2=test1Dic["key"] println("\(test1Str2)") //2 获取字典元素的个数 println(test1Dic.count) //3 增加字典的元素 test1Dic["key"]="test" println(test1Dic) //4 删除字典中的元素 test1Dic.removeValueForKey("key1") println(test1Dic) //5 修改字典中的元素 // 5.1 直接修改 test1Dic["key"]="testkey" // 5.2 使用 updateValue var oldStr=test1Dic.updateValue("testkeytest",forKey: "key") println(oldStr) println(test1Dic) //6 遍历 //6.1遍历所有的键值对 for (key,value) in test1Dic{ println("key:\(key) value:\(value)") } //6.2 遍历所有的键 for test6Str in test1Dic.keys{ println(test6Str) } //6.2 遍历所有的值 for test6Str2 in test1Dic.values{ println(test6Str2) } //7 字典转数组 //7.1 将所有的键转为数组 var test7Keys=Array(test1Dic.keys) println(test7Keys) //7.1 将所有的值转为数组 var test7Values=Array(test1Dic.values) println(test7Values)
苹果开发群 :414319235 欢迎加入 欢迎讨论