元组(tuples)
是将多个值组合成一个复合值,元组内的值可以是任意类型,各个元素不必是相同的数据类型。元组作为函数的返回值时尤其有用。
元组的不可变与可变 取决于 修饰符 let 和 var 。let 修饰的元组 不可变,var修饰的元组可变。
定义方式1:
不给元组中的元素指定名字
let httpState1 = (true,200,"成功")
定义方式2:
给元组中的每个元素指定名字,也只给其中的某个(某些)元素指定名字
let httpState2 = (success : true, code : 200, msg : "成功")
let httpState3 = (true, code : 200, "成功")
取值:
1,使用元组中的元素下标 取值,其中下标从 0 开始
let value = httpState1.2
print("value is \(value)")
//value is 成功
2,将元组赋给一个全是变量名组成的新的元组
let(state,code,_) = httpState1
print("state is \(state) and code is \(code)")
//state is true and code is 200
其中的 state 和 code 是变量名,如果元组的中的某个值不需要关系,可以使用下划线"_"将其忽略掉。
3,当我们为元组中的元素指定了名称时,可以使用元素的名称访问他的值
let code = httpState2.code
let msg = httpState2.msg
print("code is \(code) and msg is \(msg)")
//code is 200 and msg is 成功