/*

元组(tuples)把多个值组合成一个复合值。元组内的值可以使任意类型,并不要求是相同类型。

*/

//(1)声明一个元组

var mytuples=(123,"理想"); // mytuples 的类型是 (Int, String),值是 (123, "理想")   *注* 关于元组类型的说明:你可以把任意顺序的类型组合成一个元组,这个元组可以包含所有类型。只要你想,你可以创建一个类型为(Int, Int, Int)或者(String, Bool)或者其他任何你想要的组合的元组。

//(2)将一个元组转化为一个变量

var (mynum,mustr)=mytuples;  //mynum mustr 是两个变量  mynum 为mytuples元组中的第一个值 ,mustr 为mytuples元组中的第二个值

//(3)使用下标访元组或者转换

var mynum2 = mytuples.0;

var mustr2 = mytuples.1;

//(4)以在定义元组的时候给单个元素命名,给元组中的元素命名后,你可以通过名字来获取这些元素的值:

var student=(name:"小明",age:12);

println("姓名:\(student.name) 年龄:\(student.age)");

//(5)元组通常用于函数的返回值较多,其他其可以

func getNumString()->(Int,String)

{

return (12,"小明");

}

var A = (1,"Swift") //元组变量A  由 整形和字符串组成

/*

1: A 是元组变量,由整形和字符串组成

2:(B,C)是一个匿名元组变量

3:元组变量A 所对应的值,一一对应赋值给匿名变量。即B =1  C = "Swift"

注意点:

定义的匿名元组变量个数必须和定义好的元组变量值的个数相同

*/

var (B,C) = A

println("B=\(B),C=\(C)")

运行结果

B=1,C=Swift

例子 (1.2)

import Foundation

var A = (1,"Swift") //元组变量A  由 整形和字符串组成

/*

1: A 是元组变量,由整形和字符串组成

2:(_,C)是一个匿名元组变量,其中x下划线(_)代表省略变量

3:元组变量A 所对应的值,一一对应赋值给匿名变量。即 B="Swfit"

注意点:

定义的匿名元组变量个数必须和定义好的元组变量值的个数相同

*/

var (_,B) = A

println("B=\(B)")

运行结果:

B=Swift

2:通过索引来访问 (与数组访问相似)

import Foundation

var A = (1,"Swift") //元组变量A  由 整形和字符串组成

println(A.0)// A.0 指的是访问 元组变量中的第一个元素 即 1

println(A.1)// A.1 指的是访问 元祖变量中的第二个元素  即 ”Swift"

运行结果

1

Swift

3:通过key来访问

注意点:

前提是

1: 元组变量中变量必须因为字典来访问

2:访问方式即: 元组变量.key

import Foundation

/*

通过key 来访问元组变量 注意点

1:对应的变量,必须为字典  key: value

2: 访问的时候,元组变量.key

*/

var  A = (frist:"Hello",second:"swift")

println( A.frist )

println( A.second )

swift_006(Swift的元组)相关推荐

  1. swift -- Tuple 元组 Dictionary

    // 定义一个空的Dictionary var dict1 = Dictionary<Int, String>() var dict2:Dictionary<Int, String& ...

  2. Swift 中 10 个震惊小伙伴的单行代码

    几年前,函数式编程的复兴正值巅峰,一篇介绍 Scala 中 10 个单行函数式代码的博文在网上走红.很快地,一系列使用其他语言实现这些单行代码的文章也随之出现,比如 Haskell,Ruby,Groo ...

  3. Android与Swift iOS开发:语言与框架对比

    Swift是现在Apple主推的语言,2014年新推出的语言,比 Scala等"新"语言还要年轻10岁.2015年秋已经开源.目前在linux上可用,最近已经支持Android N ...

  4. Swift和Objective-C混编注意事项

    前言 Swift已推出数年,与Objective-C相比Swift的语言机制及使用简易程度上更接地气,大大降低了iOS入门门槛.当然这对新入行的童鞋没来讲,的确算是福音,但对于整个iOS编程从业者来讲 ...

  5. Swift和Objective-C混编

    Swift和Objective-C混编的注意啦 2016-10-19 13:29 编辑: 不灭的小灯灯 分类:iOS开发 来源:仁伯安的简书 0  OCSwift混编 前言 Swift已推出数年,与O ...

  6. swift学习资料2022

    目录 String 与 NSString 的关系与区别 Swift字符串的Range截取 throws 和 rethrows 的用法与作用 fileprivate和internal修饰符 open与p ...

  7. Flutter开发(1)—— Dart vs Swift

    原文链接: https://medium.com/coding-with-flutter/dart-vs-swift-a-comparison-6491e945dc17 发表日期: 2018.12.2 ...

  8. 从Java/Android到Swift iOS开发:语言与框架对比

    今天分享的主题是Java/Android开发人员如何快速上手Swift iOS开发.主要内容如下: WhyFrom Java/Android to Swift Swift语言为什么值得学习? Java ...

  9. Android Swift iOS开发:语言与框架对比

    转载自:http://www.infoq.com/cn/articles/from-android-to-swift-ios?utm_campaign=rightbar_v2&utm_sour ...

最新文章

  1. 学习了哪些知识,计算机视觉才算入门?
  2. Android 7.0解决抓取不到https请求的问题
  3. 一、Django前后端交互之Ajax和跨域问题
  4. loadrunner录制事件为0_Oracle数据库性能监控|LoadRunner 中配置监控Oracle
  5. XML Schema基本数据类型及数据限定
  6. 红橙Darren视频笔记 Behavior的工作原理源码分析
  7. c语言几千行代码图片,【图片】发几个C语言课程设计源代码(恭喜自己当上技术小吧主)【东华理工大学吧】_百度贴吧...
  8. 无人驾驶之入门(开篇)
  9. javascript:;禁用a标签默认功能的缺点。
  10. left join 一对多只取一条_Python爬虫教程:验证码的爬取和识别详解
  11. react 动态获取数据
  12. 计算机信息安全工程师教材,第三级 安全标记保护级-信息安全工程师教材
  13. 复合线转权属线lisp_地籍成图之权属线绘制-快猴网.ppt
  14. Excel函数大全-04数据库函数
  15. mysql 字段 符号_mysql数据库字段带符号的问题
  16. FlashXP命令行
  17. EXCEL 批量插入指标批注
  18. java题库难_为什么平常写项目感觉java也不是那么难,一到面试刷题得时候感觉那么吃力呢。你们呢?...
  19. 辅助驾驶功能开发-功能规范篇(02)-车道偏离辅助LDP
  20. 简要分析网络三层架构(核心层、汇聚层、接入层)

热门文章

  1. nginx 缓存时间说明
  2. android 多用户管理UserManager
  3. linux shell (4) - Loop 循环
  4. MCollective架构篇4-MCollective各种插件的部署及测试
  5. vmware redhat5.4 磁盘阵列 RIDA
  6. 给.net程序打内存补丁-转
  7. [Redis]Redis章2 Redis 持久化
  8. 树状数组 _ 求逆序数
  9. 汇编:模拟C语言实现break与continue
  10. Linux文件系统2---VFS的四个主要对象