swift -- 字典

swift -- 字典

1. 创建一个空字典

方式一:

var dic1 = [Int : String]()    //key的类型为Int  ,value的类型为String

方式二:

var dic2 = Dictionary<Sting,Int>()   //key的类型为Sting

//oc 使用@{}

//swift 还是使用[]

        //key value

        let dict:[String : Any] = ["name":"xiaoming","age":11]

        print(dict)

        //包含字典的数组

        let array:[[String:Any]] = [["name":"","age":11],

                     ["name":"a","age":22]];

2.用字面量创建字典

var dic3 : Dictionary<Int,String> = [1 : "a" , 2 : "b",3 : "c"]

3.获取元素个数

print(dic3.count)

4.是否为空

print(dic3.isEmpty)

5.获取值

print(dic3[2]!)   // !转换可选类型

6.更改值

dic3[2] = "abc"

//key不存在就是新增,存在就是西瓜

7.删除值

方式一:

dic3[2] = nil    //因为字典中元素为可选类型,所以可以直接nil

方式二:

        dic.removeValue(forKey: "age")

8.遍历字典

方式一:

for kv in dic3{

print(kv)   //元组的格式 :(1,"a")

(key: "name", value: "xiaoming")

}

方式二:

for (mKey,mValue) in dic3{

print(mKey,mValue)

}

9.字典的有序输出(小-->大)

for key in dic3.keys.sort(){

print(key,dic3[key])

}

10.合并

//4.合并

    func demo4()  {

        var dic1:[String:Any] = ["name":"xiaoming","age":11];

        var dic2:[String:Any] = ["111":"xiaoming","222":11];

 

        //dic2 合并到dic1(不能直接想加 d2+d1)

        for e in dic2 {

            dic1[e.key] = dic2[e.key];

        //key存在,会修改 ,可以不存在,会新增

        }

       

    }

原文地址:https://www.cnblogs.com/daxueshan/p/5583724.html