12.swift元祖

/*

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都做网站、成都网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的岳普湖网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

元祖:

在其它语言中很早就是有元祖这个概念,但是对于OC程序员来说这是一个新的概念

将多个相同或者不同类型的值用一个小括号括起来就是一个元祖

*/

let student = ("lnj", 30, 99.8)

print(student)

print(student.0)

print(student.1)

print(student.2)

/*

元祖其实和结构体很想,只是不需要提前定义类型.那么如果不定义类型元祖是什么类型呢?

元祖其实是复合类型,小括号中可以写任意类型

*/

let student1: (String, Int, Double) = ("lnj", 30, 99.8)

/*

元祖的其它定义方式:指明应用元祖元素的名称

*/

let student2 = (name:"lnj",age:30,score:99.8)

print(student2.name)

print(student2.age)

print(student2.score)

/*

元祖的其它定义方式: 

通过指定的名称提取元祖对应的值,会将对应位置的值赋值给对应位置的名称

*/

let (name , age , score) =  ("lnj", 30, 99.8)

print(name)

print(age)

print(score)

/*

如果不关心元祖中的某个值可以利用_通配符来忽略提取

*/

let (name1 , age1 , _) =  ("lnj", 30, 99.8)

print(name1)

print(age1)

/*

在以前没有元祖之前C和OC语言是通过传入指针或者返回结构体的方式来返回多个值的,而有了元祖之后就可以实现让一个函数返回多个值

*/

//元祖的使用 

let userArray = ["why", 18, 1,88]

userArray[0]

let userDict = ["name" : "why", "age" : 18, "height" : 1.88]

userDict["name"]

//元组的基本写法

let userInfo = ("why", 18, 1.88)

userInfo.0

userInfo.1

userInfo.2

//给每一个元素起别名

let userInfo1 = (name : "why", age : 18, height : 1.88)

userInfo1.name

userInfo1.age

userInfo1.height

//别名就是变量的名称

let (name, age, height) = ("why", 18, 1.88)

name

age

height

// ------------------使用元祖------------------------

//元祖也是一个数据集合,可以在集合中定义一组数据

//元祖的定义使用:(元素1,元素2)

("1001","张三",19,1.88)

(id : "1001", name : "张三", age : 19, height : 1.88)

//用一个数据类型来描述网络请求错误

// errorCode/errorInfo

[404,"Not Found"]

["errorCode" :404,"errorInfo" :"Not Found"]

//用元祖描述错误信息

let error = (404, "Not Found")

error.0

error.1

let error1 = (errorCode : 404, errorInfo : "Not Found")

error1.errorCode

error1.errorInfo

switch (error1) {

case (404,"Not Found"):

   print("没有找到主机")

default :

    print("其他错误")

}

let (errorCode2, errorInfo2) = (404, "Not Found")

errorCode2

errorInfo2


本文题目:12.swift元祖
本文URL:http://hbruida.cn/article/gogegh.html