Swift #7: 元组
发布: (2025年12月10日 GMT+8 03:43)
2 min read
原文: Dev.to
Source: Dev.to
元组
一个 元组 包含一组一个或多个相同或不同类型的值。它适用于存储临时或瞬时的值,虽然这些值彼此相关,但并不构成可以用 struct 或 class 表示的概念性类型。此外,元组没有方法,也不遵循协议。
基本语法
let myName: (String, String) = ("David", "Goyes")
let myInfo: (String, Int) = ("David", 10)
元组中的每个值都有索引,这使得可以通过点号语法访问它们——无论是读取还是写入。要覆盖某个索引,需要赋予相同类型的新值:
var myInfo: (String, Int) = ("David", 10)
myInfo.1 = 11
let text = "Me llamo \(myInfo.0) y tengo \(myInfo.1) años"
// Me llamo David y tengo 11 años
元素名称
为了更清晰,可以为元组的每个元素指定名称:
var myInfo: (nombre: String, edad: Int) = (nombre: "David", edad: 10)
myInfo.edad = 11
let text = "Me llamo \(myInfo.nombre) y tengo \(myInfo.edad) años"
// Me llamo David y tengo 11 años
解构为独立变量
可以通过在圆括号中声明变量名称,将元组的值复制到独立变量中;它们的值会按照元组中出现的顺序进行赋值:
let (nombre, edad) = ("David", 10)
let text = "Me llamo \(nombre) y tengo \(edad) años"
// Me llamo David y tengo 10 años