Swift之字典

1、定义字典

var dict1 = [a:"1",b:"2",c:"3"]//第一种
var dict2:[Int:String] = [a:"1",b:"2",c:"3"]//第二种
var dict3:Dictionary = [a:"1",b:"2",c:"3"]//第三种
2、定义空字典

var d1:[Int:String] = [:]//第一种
var d2:Dictionary = [:]//第二种
var d3 = [Int:String]//第三种
3、基本操作

var dict1 = [a:"1",b:"2",c:"3"]
print(dict1.count) //打印数组长度
print(dict1.isEmpty) //判断值是否为空
print(dict1[1]!) //取值 (返回值是一个可选型,通过!进行解包)
//字典的特点:
1)无序
2)键不能重复
let d1 = [1:"a",2:"b",3:"d"]
let d2 = [2:"b",1:"a",3:"d"]
print(d1==d2)//判断是否一致
以上程序执行输出结果为:

3
false
one
true
4、遍历字典(每个key对应唯一一个 value值)

var dict1 = [1:"one",2:"two",3:"three"]
for (key, value) in dict1 {
print(" key (key) - value (value)")
}
以上程序执行输出结果为:

key 1 - value one
key 2 - value two
key 3 - value three
5、增删改

// updateValue有两种不同意义的操作
(1)如果这个Key当前不存在,updateValue进行添加操作;
(2)如果当前这个Key存在,updateValue进行修改操作;
//改
var user=["name":"柯","pwd":"123","like":"music"]
user["like"] = "sleep"//修改like中对应的play改为sleep
print(user)
//user.updateValue("456",forKey:"pwd")//更新值
var oldPwd = user.updateValue("456",forKey:"pwd")!//返回原来value的值
if oldPwd == user["pwd"]{
print("修改后的密码与修改前一样,可能会导致安全问题!")
}
print(user)
//添加

user["email"] = "[123456@qq.com]"
user.updateValue("Fuyang",forKey:"location")
print(user)
//删除

user.removeValue(forKey:"like")
user["like"] = nil //null
print(user)
总结:什么时候我们采用哪种类型?
数组:有序的;
set: 无序、唯一性、交集并集等集合专有的操作速度高
字典:key-value对

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容