Swift-元组(Tuple)

元组(Tuple)

元组是Swift中新添加的数据类型,与数组相似,都表示一组数据的集合,但和数组稍微有点不同

  • 数据类型
    • 元组中元素的数据类型可以是不相同的
    • 数组中的元素的数据类型必须是相同的
定义

小括号括起来,逗号隔开……

var myTuple = ("zhangsan", false, 34)
读取元组中的数据
  • 在初始化元组的时候给对应位置变量一个变量名
let myTuple = (name:"zhangsan", isMan:false, age:34)
myTuple.name //zhangsan
myTuple.isMan //false
myTuple.age //34
  • 直接通过索引来读取
var name = myTuple.0  //zhangsan
var flag = myTuple.1  //false
var age = myTuple.2   // 34
  • 间接读取:把myTuple付给一个全是变量名组成的新的元组,直接通过变量名去访问元组中的数据。
let (name, isMan, age) = myTuple
name // zhangsan
isMan // false
age // 34
跳过不关心的值
  • 用下划线忽略你不关心的值
let(name, _, age) = myTuple
name //zhangsan
age //34
// isMan已经不能在访问
  • 在元组初始化的时候不给指定变量名:
    let myTuple = (name:”zhangsan”, false, age:34)
可变和不可变的元组

元组的创建可以用var和let, 其中var创建的元组就是可变元组,let定义的就是不可变元组。但是不管是var创建的元组还是let创建的元组,在创建够后就不能对它的长度进行修改。可变元组在创建后可以修改元组中的数据.

Addtion

我们可以使用元组在同一个switch语句中测试多个值,元组中的元素可以使值,也可以是区间。其中下划线”_”可以用来匹配所有可能的值。

let point = (1, 0)
switch point{
    case (0, 0):
        print("0, 0 is at the origin")
    case (_, 0):
        print("\(point.0), 0 is at the origin")
    case (0, _):
        print("0, \(point.1) is at the origin")
    case (-2...2, -2...2):
        print("\(point.0), \(point.1) is inside the origin")
    default:
        print("\(point.0), \(point.1) is outside the origin")
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值