Swift之字典

字典的定义

var dict1 = ["swift":"雨燕","python":"大蟒","java":"爪哇国"]

//问题:dict1 长度是多少? 3

var dict2:[String:String] = ["swift":"雨燕","python":"大蟒","java":"爪哇国"]

var dict3:Dictionary<String,String> = ["swift":"雨燕","python":"大蟒","java":"爪哇国"]

//空字典的定义

var empty1:[Int:String] = [:]

var empty2:Dictionary<String,String> = [:]

var empty3 = [String:String]()

基本操作:长度,判断是否为空,取值

print(dict1.count)

print(dict1.isEmpty)

print(dict1["java"]!)//返回值是一个可选型,通过!进行解包

//字典的特点:1)无序 2)键不能重复

let d1 = [1:"a",2:"b",3:"d"]

let d2 = [2:"b",1:"a",3:"d"]

print(d1==d2)//true

//let d3 = [2:"b",1:"a",3:"d",3:"e"] --报错

遍历-遍历Key,value,key-value对

for key in dict1.keys{

    print(key)

}

for value in dict1.values{

    print(value)

}

for (key,value) in dict1{

    print(key,value)

}

增删改查

//如果这个Key当前没有,添加操作;如果当前这个Key存在,修改操作

//改

var user=["name":"miao","pwd":"123","job":"coder"]

user["job"] = "teacher"

print(user)

//user.updateValue("456",forKey:"pwd")//更新值

var oldPwd = user.updateValue("456",forKey:"pwd")!//返回原来value的值

if oldPwd == user["pwd"]{

    print("修改后的密码与修改前一样,可能会导致安全问题!")

}

print(user)

//添加

user["email"] = "56429@qq.com"

user.updateValue("chuzhou",forKey:"location")

print(user)

//删除

user.removeValue(forKey:"location")

user["email"] = nil //null

print(user)

总结:什么时候我们采用哪种类型?

数组:有序的;

set:  无序、唯一性、交集并集等集合专有的操作速度高

字典:key-value对

//for in遍历

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

相关阅读更多精彩内容

  • 1、定义字典 var dict1 = [a:"1",b:"2",c:"3"]//第一种var dict2:[Int...
    柯书乐阅读 1,535评论 0 0
  • 1、定义字典 var dict1 = [a:"1",b:"2",c:"3"]//第一种var dict2:[Int...
    柯书乐阅读 3,508评论 0 0
  • 1、定义字典 var dict1 = [a:"1",b:"2",c:"3"]//第一种var dict2:[Int...
    柯书乐阅读 2,675评论 0 0
  • //字典的定义 ``` var dict1=["swift":"雨燕","python":"大蟒","java":...
    清梦_c437阅读 1,607评论 0 0
  • Swift中的字典类型是Dictionary,泛型集合。var修饰是可变字典,let修饰时可变字典 声明字典类型:...
    青菜白玉堂阅读 6,435评论 0 1

友情链接更多精彩内容