Swift 元组 (Tuple)

  • 定义元组
// 匿名元组
let  error = (1, "我是内容")
// 命名元组
let  error = (errorCode: 1, errorMessage: "我是内容")
或者:
let  error: (errorCode: Int, errorMessage: String) = (errorCode: 1, errorMessage: "我是内容")
  • 获取元组内容
// 访问匿名元组,
let  error = (1, "我是内容")
error.0 = 1
error.1 = "我是内容"

// 访问命名元组
let  error = (errorCode: 1, errorMessage: "我是内容")
error.errorCode = 1
error.errorMessage = "我是内容"
  • 修改元组
var error = (errorCode: 1, errorMessage: "我是内容")
error.errorCode = 2  // 正常代码,
error.errorMessage = 3  // 错误代码,类型错误。
上面需要注意的是,元组定义之后,
如果属性都指定了基本类型,那么后续赋值就要注意类型问题。

如果不想限制元组类型,那么就需要把参数定义为 Any 类型, 操作方式如下:
var error: (errorCode: Int, errorMessage: Any) = (errorCode: 1, errorMessage: "我是内容")

error.errorCode = 2
error.errorMessage = 3   // 这里就可以正常修改。
  • 元组分解
let error = (1, "我是内容")
let (errorCode, errorMessage) = error

errorCode = 1
errorMessage = "我是内容"
  • 元组作为函数返回值
func testMethod(value: String) -> (errorCode: Int, errorMessage: String) {
  return (1, "我是内容")
}

let error = testMethod("")
error.errorCode = 1
error.errorMessage = "我是内容"

通常可以用元组来为函数返回多个返回值。

你可能感兴趣的:(Swift 元组 (Tuple))