Swift学习06:Tuple元组

张建 lol

Tuple

  • 元组 把多个值合并成单一的复合型的值
  • 元组 内的值可以是任何类型,而且可以不必是统一类型
1
2
3
let error = (1,"没有权限")
print(error.0)
print(error.1)

元素命名

  • 元组中的每一个元素可以指定对应的元素名称
1
2
3
let error = (errorCode:1,errorMessage:"没有权限")
print(error.errorCode)
print(error.errorMessage)

  • 如果没有指定名称的元素也可以使用下标的方式来引用
1
2
3
let error = (1,"没有权限")
print(error.0)
print(error.1)

Tuple 修改

  • var 定义的元组就是可变元组,let 定义的元组就是不可变元组
  • 不管是可变还是不可变元组,元组在创建后就不能增加和删除元素
  • 可以对可变元组的元素进行修改,但是不能改变其类型
1
2
3
var error = (errorCode:1,errorMessage:"没有权限")
error.errorCode = 2
error.errorMessage = "2"

  • any 类型可以改为任何类型
1
2
3
4
5
var error: (Any,String) = (1,"没有权限")
error.0 = 2
print(error)
error.0 = "abc"
print(error)

Tuple 分解

  • 将一个元组的内容分解成单独的常量或变量
1
2
3
4
let error = (1,"没有权限")
let (errorCode,errorMessage) = error
print(errorCode)
print(errorMessage)

  • 如果只需要使用其中的一部分数据,不需要的数据可以用下划线 _ 代替
1
2
3
let error = (1,"没有权限")
let (_,errorMessage) = error
print(errorMessage)

作为函数返回值

  • 使用 Tuple 为函数返回多个值
  • 返回值的 Tuple 可以再函数的返回类型部分被命名
1
2
3
4
5
func writeToFile(content:String) -> (errorCode:Int,errorMessage:String) {
return (1,"没有权限")
}
let error = writeToFile(content: "")
print(error)

  • Post title:Swift学习06:Tuple元组
  • Post author:张建
  • Create time:2023-02-22 02:54:43
  • Post link:https://redefine.ohevan.com/2023/02/22/Swift课程/Swift学习06:Tuple元组/
  • Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.
On this page
Swift学习06:Tuple元组