1.元组(tuples)把多个值组合成一个复合值,元组内的值可以是任意类型,并不要求是相同类型
let httpStatus = (200,"OK")
2.你可以把任意顺序的类型组合成一个元组,这个元组可以包含所有类型,你可以创建一个类型为(Int, Int, Int)
或者(String, Bool)
或者其他任何你想要的组合的元组
3. 元祖数据分解
let tupleName = ("name","HahaSwift")
let httpStatusCode = ("statusCode",200)
let (_ ,code) = httpStatusCode
print(code)// 打印出200
let (m1,m2) = tupleName
print("\(m1) : \(m2)")//打印出 “name:HahaSwift”
注意 : 如果你只需要一部分元组值,分解的时候可以把要忽略的部分用下划线(_
)
4.你可以在定义元组的时候给单个元素命名
let httpCode = (statusCode :200,desc : "OK" )
print(httpCode.statusCode)//打印出200
给元组中的元素命名后,你可以通过名字来获取这些元素的值
5.你还可以通过下标来访问元组中的单个元素,下标从零开始
let httpStatusCode = ("statusCode",200)
print(httpStatusCode.0)//打印出200
6.作为函数返回值时,元组非常有用。一个用来获取网页的函数可能会返回一个(Int, String)
元组来描述是否获取成功。和只能返回一个类型的值比较起来,一个包含两个不同类型值的元组可以让函数的返回信息更有用
7.注意:
元组在临时组织值的时候很有用,但是并不适合创建复杂的数据结构,如果你的数据结构并不是临时使用,请使用类或者结构体而不是元组