数组、集合、元祖、字典

木木木大约 4 分钟iOSSwift语法

数组、集合、元祖、字典

Array (数组)

数组是作为单个值存储的值的集合:

let one = "panda"
let two = "monkey"
let three = "tiger"
let four = "hippo"
let all = [one, two, three, four]

括号内写入数字来从数组中读取值:

all[1]

数组是有序集合,存储相同数据类型的多个值,可以通过下标或其他方法来访问和操作数组中的元素。

数组可以使用固定的长度来存储数据,并且支持快速的随机访问,因此在需要频繁访问和修改数组中的元素时,数组是一种非常有效的数据结构。

Set (集合)

直接从数组创建集合:

let colors = Set(["red", "green", "blue"])

将重复项插入集合,重复项将被忽略,集合只包括红色、绿色和蓝色一次:

let colors2 = Set(["red", "green", "blue", "red", "blue"])

集合是无序的数据集合,可以存储不同类型的多个值,并且支持快速的查找、添加和删除操作。集合内的元素没有特定的顺序,因此不能通过下标来访问集合中的元素。

集合通常用于存储唯一的元素,并且支持高效的元素查找和去重。当需要使用高效的查找算法时,集合通常比数组更加适合。同时,集合还可以用于处理键值对数据。

Swift 提供了多种集合类型,包括集合(Set)、字典(Dictionary)、哈希表等,每种类型都有不同的特点和用途。

元祖 (Tuple)

元组是通过将多个项目放入括号中创建的:

var name = (first: "Taylor", last: "Swift")

使用从 0 开始的数字位置访问元祖:

name.0

或者使用名称访问项目:

name.first

元组允许将多个值一起存储在一个值中。但元组和数组是不同的:

不能在元组中添加或删除项目;它们的大小是固定的。

不能更改元组中项目的类型;它们始终具有与创建时相同的类型。

可以使用数字位置或通过命名来访问元组中的项目,但 Swift 不会让读取不存在的数字或名称。

字典 (字典)

存储字典数据最常见的方法是使用字符串,创建一个字典,用他们的名字存储歌手的身高:

let heights = [
"Taylor Swift": 1.78,
"Ed Sheeran": 1.73

标识符被称为key,从字典中读取数据:

heights["Taylor Swift"]

尝试未定义的key获取值会得到nil:

heights["LeBron James"]

给字典一个"unknown"的默认值,未定义的key获取值会得到"unknown":

heights = [
heights["LeBron James", default: "Unknown"]

初始化

创建一个带有以下键和值字符串的空字典:

var teams = [String: String]()
teams["Paul"] = "Red"

创建一个空数组来存储整数:

var words = Set<String>()
var numbers = Set<Int>()

创建一个空集

heights["Taylor Swift"]

数组和字典也可以用这种方式初始化:

var scores = Dictionary<String, Int>()
var results = Array<Int>()

数组 vs 集合 vs 元组 vs 字典

  • Array
let pythons = ["Eric", "Graham", "John", "Michael", "Terry", "Terry"]

当需要按照顺序存储一组相同类型的数据时,可以使用数组。

当需要快速访问数组中的元素时,数组是一种高效的数据结构。

当需要对数组中的元素进行排序、过滤、映射等操作时,数组是一种常用的数据结构。

当元素的数量不会发生变化时,可以使用数组来存储数据。

  • Set
let set = Set(["aardvark", "astronaut", "azalea"])

当需要存储一组唯一的值时,可以使用集合。

当需要进行高效的成员检查、添加、删除等操作时,集合是一种高效的数据结构。

当元素之间的顺序不重要时,可以使用集合来存储数据。

  • Tuple
let address = (house: 555, street: "Taylor Swift Avenue", city: "Nashville")

当需要临时存储和传递多个值时,可以使用元组。

当需要将多个值作为一个整体进行操作时,元组是一种方便的数据结构。

当元素的数量和类型是固定的时,可以使用元组来存储数据。

  • Dictionary
let heights = [
"Eric": 1.78,
"Graham": 1.73,
"Michael": 2.03,
]

当需要使用键值对来存储和查找数据时,可以使用字典。

当需要高效地根据键查找值时,字典是一种高效的数据结构。

当需要对字典中的键值对进行添加、删除、修改等操作时,字典是一种常用的数据结构。

上次编辑于:
贡献者: perhapsdone