Swift字典集合
在Swift中,字典是一种非常常用的数据结构,用于存储键值对。本文将介绍Swift中字典的基本概念、创建和访问字典、字典常用操作等内容,并提供两个示例说明。
1. 字典的基本概念
字典是一种无序的键值对合,其中每个键都是唯一的。在Swift中,字典的类型为Dictionary<Key, Value>
,其中Key表示键的类型,Value表示的类型。
2. 创建和访问字典
在Swift中,可以使用以下方式创建和访问字典:
2.1 创建字典
var dict1: [String: Int] = ["apple": 1, "banana": 2, "orange": 3]
var dict2 = ["apple": 1, "banana": 2, "orange": 3]
上面的代码分别使用了显式类型声明和类型推断的方式创建了一个包含三个键值对的字典。
2. 访问字典
let value1 = dict1["apple"]
let value2 = dict1["pear"]
上面的代码分别访问了字典dict1
中键为"apple"
和"pear"
的值。如果键不存在,则返回nil
。
3. 字典的常用操作
在Swift中,字典支持以下常用操作:
.1 添加和修改键值对
dict1["pear"] = 4
dict1.updateValue(5, forKey: "watermelon")
上面的代码分别使用了下标和updateValue(_:forKey:)
方法添加和修改了字典dict1
中的键值对### 3.2 删除键值对
dict1["pear"] = nil
dict1.removeValue(forKey: "banana")
上面的代码分别使用了下标和removeValue(forKey:)
方法删除了字典dict1
中的键值对。
3.3 遍历字典
for (key, value) in dict1 {
print("\(key): \(value)")
}
for key in dict1.keys {
print(key)
}
for value in dict1.values {
print(value)
}
上面的代码分别使用了for-in循环和
keys、
values属性遍历了字典
dict1`中的键值对、键和值。
4. 示例说明
示例1:统计字符串中每个字符出现的次数
let str = "hello, world"
var dict: [Character: Int] = [:]
for char in str {
if let count = dict[char] {
dict[char] = count + 1
} else {
dict[char] = 1
}
}
print(dict)
上面的代码统计字符串str
中每个字符出现的次数,并将结果存储在字典dict
中。
示例2:将数组中的元素按照首字母分组
let arr = ["apple", "banana", "orange", "pear", "watermelonvar dict: [Character: [String]] = [:]
for str in arr {
let firstChar = str.first!
if var group = dict[firstChar] {
group.append(str)
dict[firstChar] = group
} else {
dict[firstChar] = [str]
}
}
print(dict)
上面的代码将数组arr
中的元素按照首字母分组,并将结果存储在典dict
中。