十一、Swift3.0之字典定义、增删改、遍历和合并

字典和字典数组的定义

// Swift中使用[ ],和数组一样
    func demo() {
        //定义字典
        let dict = ["name":"张","age":"12"]
        print(dict)
        
        //定义字典数组  这种形式在开发中使用很多
        let array: [[String: AnyObject]] = [
            ["name":"张" as AnyObject,"age":"12" as AnyObject],
            ["name":"张" as AnyObject,"age":"12" as AnyObject]
        ]
        print(array)
    }
    ```
   增删改操作
func demo() {
    var dict = ["name":"张","age":"12"]
    //如果key存在就是修改,不存在就是增加
    //增
    dict["sex"] = "男"
    //改
    dict["name"] = "李"
    //删,直接给定key即可 
    // 科普:字典是通过KEY来定位的,KEY必须是可以 ’hash 哈希‘的  MD5一样
    // hash就是讲字符串变成唯一的数字,便于查找,提高效率
    dict.removeValue(forKey: "age")
    print(dict)
    dict.removeAll()
}
```

遍历的两种方式

    func demo() {
        var dict = ["name":"张","age":"12"]
        //遍历方式一
        for e in dict{
            //e: (key: String, value: String)  这是一个元组
            print("\(e.key)\(e.value)")
        }
        
        //遍历方式二
        //前面是key  后面是value   具体名字可随意更改
        for (k,v) in dict{
            print("\(k)\(v)")
        }
    }
    ```
    
   合并

func demo() {
var dict1 = ["name":"张","age":"12"]
let dict2 = ["name":"李","age":"23"]
//提示:字典不能像数组那样直接用+
//思路:遍历dict2 依次设置
for e in dict2{
//如果key不存在,直接增加。存在的话就会更改。
dict1[e.key] = dict2[e.key]
}
print(dict2)
}

你可能感兴趣的:(十一、Swift3.0之字典定义、增删改、遍历和合并)