,,Swift学习笔记之元组(tuples)

,,Swift学习笔记之元组(tuples)

本文主要介绍Swift中元组的相关信息,非常详细,对大家有一定的参考价值。有需要的人来看看吧。

元组

元组是其他类型的组合。元组可以包含零个或多个类型,例如字符串、整数、字符、布尔和其他元组。还要注意,元组是值传递,而不是引用。

在Swift中创建元组的方法很简单。元组类型是零个或多个类型的列表,由括号括起来,并用逗号分隔。例如:

让firstHighScore=('玛丽',9001)

此外,创建元组时,还可以命名元组中的元素:

let secondHighScore=(姓名:'詹姆斯',分数:4096)

这是创建元组的两种方法,非常简单明了。不需要像创建struct那样写出它的结构和内部属性,也不需要像创建class那样写初始化方法。你只需要把你想用的任何类型的值放在括号里,用逗号分开。如果愿意,还可以给每个元素命名,以提高元组的使用效率。

从元组中读元素

如果我们没有命名一个元组的元素,我们可以使用点语法通过定义的元组变量或常量来获得它的第1到第n个元素:

让firstHighScore=('玛丽',9001)

println(first high score . 0)//Mary

println(first high score . 1)//9001

如果你觉得上面的方法会造成语义歧义,那么我们也可以把一个元组赋给一个有元素名的元组(元素名的个数要对应):

let(名字,分数)=firstHighScore

println(名字)//玛丽

println(firstScore) //9001

如果只需要元组值的一部分,可以在分解时用下划线(_)标记要忽略的部分:

let (_,firstScore)=firstHighScore

println(firstScore) //9001

如果我们已经命名了元组中的元素,那么我们可以这样写它:

let secondHighScore=(姓名:'詹姆斯',分数:4096)

println(second high score . name)//詹姆斯

println(second high score . score)//4096

将元组作为函数返回值

当您希望函数能够返回多种类型时,这是元组的最佳使用场景。

我们可以用元组作为函数的返回值,下面这些函数的返回值就是我们之前定义的secondHighScore元组:

func getahiscore()-(名称:字符串,分数:整数){

让那个名字='帕特丽夏'

让分数=3894

return (theName,theScore)

}

为什么说上面函数的返回值是secondHighScore元组?因为getAHighScore函数返回的元组元素的个数、名称、类型与secondHighScore的相同。

事实上,在使用元组作为函数的返回值时,不必命名元素,只要理解每个元素的含义即可:

func getahiscore()-(String,Int) {

让那个名字='帕特丽夏'

让分数=3894

return (theName,theScore)

}

如果您不确定返回的元组一定不能为零,那么您可以返回一个可选的元组类型:

func maybeGetHighScore()-(String,Int)?{

返回零

}

因为它是可选的元组类型,所以当返回的元组不为空时,需要解包该元组:

if let possible score=maybeGetHighScore(){

possibleScore.0

可能性核心1

}否则{

println(“这里什么也没有”)

}

注意:当你定义一个没有返回值的函数时,该函数实际上返回一个空元组()。

元组的访问级别

元组的访问级别取决于它包含的元素。例如,如果一个元组中的所有元素都是私有的,那么该元组也是私有的。但这里有一个最低原则。也就是说,如果一个元组中有两个元素,一个是私有的,一个是公共的,那么这个元组遵循最小原则,它的访问级别是私有的。

元组是值类型

关于值类型和引用类型的知识在这里不再是累赘。让我们通过一个代码示例来看看元组是哪些类型:

var someScore=('约翰',55岁)

var anotherScore=someScore

anotherScore.0='罗伯特'

println(another score . 0)//输出:“Robert”

println(some score . 0)//输出:“John”

从上面的代码示例可以看出,我给anotherScore赋了一些tuple,然后修改了anotherScore的第一个元素的值,最后分别打印了someScore和anotherScore的第一个元素的值。someScore元组的第一个元素的值是Robert,而anotherScore元组的第一个元素的值还是John。可见元组是值类型。

总结

这就是本文的全部内容。希望这篇文章的内容能给你的学习或者工作带来一些帮助。有问题可以留言交流。谢谢你的支持。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • word文档无法编辑是怎么回事-
  • 华为手机怎么设置返回键(华为手机下面的三个按键设置方法)
  • lumia950怎么样(Lumia950体验分享)
  • otg连接是什么意思(OTG连接手机方法)
  • 笔记本触摸板怎么右键(笔记本电脑触控板手势操作设置)
  • 真我x7怎么样(realme X7 系列体验)
  • 苹果的A16处理器有多强(苹果的A16处理器的介绍)
  • 小米互传怎么用(小米手机的连接与共享教程)
  • 怎么设置电脑桌面图标自动对齐 设置电脑桌面自动整理图标的方法
  • 宽带错误651最简单解决方法(处理宽带错误651的措施)
  • 大学生手机有什么推荐(大学生换手机攻略)
  • 天玑1100和骁龙778g哪个好(骁龙778G、天玑900、天玑1100购选建议)
  • yum update 升级报错的解决办法
  • Windows10禁用屏保教程
  • 连接wifi显示无互联网连接怎么办(无线连上了却不能上网处理绝招)
  • 留言与评论(共有 条评论)
       
    验证码: