Skip to content

Dictionary 字典

概念

和 js 中的对象非常相似,是键值对形式的,类型必须一致

声明

swift
var a:Dictionary<Int, String> = [:] // 空字典
var b = [1: "张三", 2: "李四"]
var c = [true: "张三", false: "李四"]
var d = [true: 2, false: 3]

获取值

字典名 + key 可以获得属性值

default 参数可以在没找到时候返回

swift
var a = [1: "张三", 2: "李四"]

print(a[1, default: "没找到"]) // 张三
print(a[4, default: "没找到"]) // 没找到

获取长度

count 方法获取字典的长素

swift
var a = [1: "张三", 2: "李四"]

print(a.count) // 2

是否为空

isEmpty 方法判断是否为空

swift
var a = [1: "张三", 2: "李四"]

print(a.isEmpty) // false

遍历

下面提供几种遍历方式参考

swift
var a = [1: "张三", 2: "李四"]

// 键值对遍历
for (k, v) in a {
    print(k, v)
}

// 值遍历
for v in a.values {
    print(v)
}

// 键遍历
for k in a.keys {
    print(k)
}

// forEach 默认参数遍历
a.forEach{
    print($0, $1)
}

// forEach 定义参数遍历
a.forEach{k, v in
    print(k, v)
}

获取随机数

randomElement 方法可以获取字典中的随机元素

swift
var a = [1: "张三", 2: "李四"]

print(a.randomElement()!)