swift字典

/*

 1. 定义

 2. 增删改

 3. 遍历

 4. 合并

 */

class ViewController: UIViewController

{

 

    override func viewDidLoad()

    {

        super.viewDidLoad()

        // Do any additional setup after loading the view, typically from a nib.

        demo4()

    }

 

    // 4. 合并

    func demo4()

    {

        var dic1 = ["name":"tang", "age":12] as [String:Any]

        

        let dict2 = ["name":"mo","height":15] as [String:Any]

        

        // 思路遍历dic2 依次设置

        // 如果key存在,修改

        // 如果key不存在,新增

        for e in dict2

        {

            dic1[e.key] = e.value

        }

        

        print("dic1=\(dic1)")

    }

    

    // 3. 遍历

    func demo3()

    {

        let dic = ["name":"tngang", "age":14, "title":"hhh"] as [String:Any]

        for e in dic

        {

            print("key=\(e.key); value=\(e.value)")

        }

        

        print("----------------")

        

        /**

         前面的是key

         后面的是value

         

         具体的名字可以随便

        */

        for (key, value) in dic

        {

            print("key=\(key); value=\(value)")

        }

    }

    

    // 2. 增删改

    func demo2()

    {

        //  可变var / 不可变let

        var dic = ["name":"tang", "age":14] as [String:Any]

        

        // 新增 - 如果Key不存在,就是新增

        dic["title"] = "太热了"

        print("dic=\(dic)")

        

        // 修改 - 字典中,是通过key取值,在字典中必须是唯一的

        dic["name"] = "moyongmei"

        print("dic=\(dic)")

        

        // 删除 通过键进行删除

        // hash 就是将字符串编程唯一的‘整数’便于查找,提高字典遍历速度

        dic.removeValue(forKey: "age");

        print("dic=\(dic)")

        

        

     }

    

    // 1. 定义

    func demo1()

    {

        // OC 定义字典,是用{}

        // Swift 使用[]

        

        let dict: [String:Any] = ["name":"tang","age":18]

        print("dict=\(dict)")

        

        // 定义字典的数组 - 提示,这种格式在开发中使用的最多

        let array: [[String:Any]] = [

            ["name":"tang","age":14],

            ["name":"bin","age":18]

        ]

        print("array=\(array)")

        

        

    }

 

}

posted on 2017-07-28 14:18  TangBin604  阅读(80)  评论(0编辑  收藏  举报

导航