元组把多个值合并成单一的复合型的值
元组内的值可以是任何类型,而且可以不必是同一类型
let error = (1, "没有权限")
print(error.0)
print(error.1)
元素命名
- 元组中的每一个元素可以指定对应的元素名称
- 如果没有指定名称的元素,也可以使用下标方式来引用
let error = (errorCode:1, errorMessage: "没有权限")
print(errorCode)
print(errorMessage)
Tuple修改
- 用var定义的元组就是可变元组,let定义的就是不可变元组
- 不管是可变还是不可变元组,元组在创建后就不能增加和删除元素
- 可以对可变元组的元素进行修改,但不能改变其类型
- any类型可以改为任何类型
var error:(Any, String) = (0, "没有权限")
error.0 = 2
print(error) // (2, "没有权限")\n
error.0 = "abc"
print(error) // ("abc", "没有权限")\n
Tuple 分解
- 可以将一个元组的内容分解成单独的常量或者变量
- 如果只需要使用其中的一部分数据,不需要的数据可以用下划线(_)代替
let error = (1, "没有权限")
let (errcode, errorMessage) = error
print(errcode) // 1
print(errorMessage) // 没有权限
let error = (1, "没有权限")
let (_, errorMessage) = error
print(errorMessage) // 没有权限
作为函数返回值
- 使用Tuple为函数返回多个值
- 返回值的Tuple可以在函数的返回类型部分被命名
func writeToFile(conent: String) -> (errorCode: Int, errorMessage: String) {
return (1, "没有权限")
}
网友评论