2020.3.13_swift字典

//字典的定义

```

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

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

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

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

//空字典的定义

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

var empty2:Dictionary=[:]

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":"yu","pwd":"123","job":"coder"]

user["job"]="student"

print(user)

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

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

if oldPwd==user["pwd"]{

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

}

print(user)

//添加

user["email"]="[email protected]"

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

print(user)

//删除

user.removeValue(forKey:"location")

user["email"]=nil //null

print(user)

```

/*

总结:数组:有序的;

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

          字典:key-value对

*/

你可能感兴趣的:(2020.3.13_swift字典)