Swift教程07-基本数据类型(三)元组类型tuple
元组乃何方神圣? 元组,tuple原出自数据库中的一种概念,就是关系型数据库中的一条记录或者说一行; 一个元组可以包含多个字段,每个字段可以是不同的类型,就像我们从数据库取出一条学生的信息,包括这些 ("张三",0001,"男","1391111****") 姓名,编号,性别,手机号 这样的类型一次就可以包含我们需要的多个信息. 如今Swift的 也引入了 这种类型,不得不说 这是Swift的强大之处之一. 元组的定义 (1)定义一个元组并且指定初始值
var student = ("张三",10010) (2)定义一个元组类型,然后赋值
var student2 :(String,String,Int) student2 = ("李四","女",10011)
student2 = student
var stu = (student,"1100") var stu2 = (("王五",1001,"男"),student2,110) 嵌套元组类型的定义 var yunzu:(Int,(String,Int)) (5)访问元组的元素值,使用类似于数组的下标,可以支持多级下标,类似于2维,多维数组的下标
如 访问 stu 元组中的第二个元素,"1100" 就是 stu.1,[下标从 0开始]
访问 stu 元组中 第一个元素 即 student元组 中的第二个元素 ("男"),则需要使用二级 下标 stu.0.1
(6)打印元组,及元组中的单个元素
插值符号 : / (元素值) 则可以将该 元素值表示在 字符串中 如 var a = 1 println("a的值是 (a)") 则 可以直接输出 a对应的值,类似于 C语言中的 %d,%s格式化的符号 如下,你可以在字符串中 来 插入 元素的值 println("student元组的是:(student)") println("student元组的第一个元素是(student.0)") println("stu元组的第一个元素(元组)中的第一个元素是(stu.0.0)") 当然你也可以直接打印其值,不需要 使用引号 println(student) println(student.0) println(stu.0.0) (7)元组的拆分 var student = ("张三","男",10010) //把元组的元素拆分到各个变量中去 var (name,sex,id) = student //直接使用变量名来访问 println(name) println("编号是 :(id)") 我们还可以在拆分的过程中去掉我们不想要的元素,使用 下划线 _ 代替,下划线在 循环,变量绑定,函数定义等地方还会遇到
var (name1,sex1,_) = student 那样,sex1之后的那个元素就被忽略了
(8)以键值对的形式使用元组,元组中的每一个变量可以有一个名字,这个名字类似于字典的key键
直接使用key来访问元组中的变量 var stu3 = (sName:"赵六",sSex:"男",sID:1111) //访问该元组中的元素 println(stu3.sName) println("元组中的编号是(stu3.sID)") 定义一个键值对类型的元组类型 var stu4:(sNa:String,sSe:String,sI:Int)
//按顺序赋值,需要一一对应 stu4 = ("刘七",1213)
//不按顺序,按 key赋值,可忽略顺序 stu4 = (sSe:"女",sI:1112,sNa:"刘八") //使用Key访问元组中的元素 println(stu4.sNa)
(9)元组的其他用法: 作为函数的返回值,则函数可以返回多个值了 在Switch 语句中使用
原文地址:http://blog.csdn.net/yangbingbinga (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |