元组是多个值组合而成的复合值。元组中的值可以是任意类型,而且每一个元素的类型可以是不同的。
元组声明
1
2
3
4
5
6
7
8
9
|
//普通声明 var point = (5,2) var httpResponse = (404, "Not Found" ) //定义类型声明 var point2 : (Int,Int,Int) = (10,5,2) var httpResponse2 : (Int,String) = (200, "ok" ) |
元组解包
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
var point = (5,2) var httpResponse = (404, "Not Found" ) let (x,y) = point // x = 5 , y = 2 var (statuseCode, statuseMessage) = httpResponse // statuseCode = 404 , statuseMessage = "Not Found" //此时因为元组(x,y)是let 类型的,所以x和y的值不能改变;而(statuseCode, statuseMessage)是var类型的所以statuseCode和statuseMessage的值可以改变 x = 10 //举报错 statuseCode = 405 //不报错 |
元组也可以如同数组一样,根据索引进行解包,所以从0开始
1
2
3
4
|
var point = (5,2) point.0 //值为5 point.1 //值为2 |
元组也可以如同字典一样,给每个值赋一个key作为名字,根据名字解包
1
2
3
4
5
6
7
8
9
10
11
12
13
|
let point3 = (x:3,y:2) point3.0 //值为3 point3.x //值为3 let point4 : (x:Int,y:Int) = (5,10) point4.x //值为5 point4.y //值为10 |
部分解包,不需要的值用 _ 表示,对元组进行部分解包
1
2
3
4
5
6
7
8
9
10
|
//部分解包 let loginResult = ( true , "LXY" ) let (isLoginSuccess,_) = loginResult if isLoginSuccess { } |
以上就是关于IOS Swift 元组的讲解,如有疑问大家留言交流,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://blog.csdn.net/u012903898/article/details/52584122