1.什么是元组
在其它语言中很早就是有元组这个概念, 但是对于OC程序员来说这是一个新的概念
官方定义:*元组(tuples)*把多个值组合成一个复合值。
元组内的值可以是任意类型,并不要求是相同类型。
将多个相同或者不同类型的值用一个小括号括起来就是一个元组
2.定义元组
let student = ("123", 30, 99.8)
print(student)
print(student.0)
print(student.1)
print(student.2)
元组其实和结构体很像, 只是不需要提前定义类型.
元组其实是复合类型, 小括号中可以写任意类型
也可以指定数据类型
如果指定了数据类型,那么对应的必须是其它定的数据类型,否则会报错.
let student: (String, Int, Double) = ("gqzw", 30, 99.8)
3.定义元组其它方式
指明元组元素的名称
let student = (name:"gqzw",age:18,score:99.8)
print(student.name)
print(student.age)
print(student.score)
通过指定的名称提取元组对应的值, 会将对应位置的值 赋值给对应位置的名称
let (name , age , score) = ("gqzw", 18, 99.8)
print(name)
print(age)
print(score)
如果不关心元组中的某个值可以利用_通配符来忽略提取
let student = ("gqzw",10,20)
let (name , age , _) = student
print(name)
print(age)
在以前没有元组之前C和OC语言是通过传入指针或者返回结构体的方式来返回多个值的
而有了元组之后就可以实现让一个函数返回多个值