iOS开发Swift篇—(五)元组类型
iOS开发Swift篇—(五)元组类型
一、元组类型介绍
1.什么是元组类型
元组类型由 N个 任意类型的数据组成(N >= 0),组成元组类型的数据可以称为“元素”
示例:
let position = (x : 10.5, y : 20) // position有2个元素,x、y是元素的名称
let person = (name : "jack") // person只有name一个元素
let data = () // 空的元组
2.元素的访问
var position = (x : 10.5, y : 20)
(1)用元素名称
let value = position.x // 取值
position.y = 50 // 设值
(2)用元素位置
var value = position.0 // 相当于var value = postion.x
position.1 = 50 // 相当于postion.y = 50
代码示例:
注意:如果用let来定义一个元组,那么就是常量,就无法修改它的元素
let point = (x : 10, y : 20)
point.x = 30
第2行代码会报错
代码示例:
3.元组的输出
可以输出整个元组来查看所有元素的值
var point = (x : 10.5, y : 20)
point.x = 30
point.1 = 50
println(point)
输出结果是:(30.0, 50)
二、使用细节
(1)可以省略元素名称
let position = (10, 20)
let person = (20, "jack")
(2)可以明确指定元素的类型
var person: (Int, String) = (23, "rose")
person的第0个元素只能是Int类型、第1个元素只能是String类型
注意:在明确指定元素类型的情况下不能加上元素名称
因此,下面的语句是错误的
var person: (Int, String) = (age : 23, name : "rose")
(3)可以用多个变量接收元组数据
var (x , y) = (10, 20) // x是10,y是20
var point = (x, y) // point由2个元素组成,分别是10和20
(4)可以将元素分别赋值给多个变量
var point = (10, 20)
var (x , y) = point
// x是10,y是20
(5)可以使用下划线 _ 忽略某个元素的值,取出其他元素的值
var person = (20, "jack")
var (_, name) = person
// name的内容是“jack”,person中的元素20被忽略
iOS开发Swift篇—(五)元组类型的更多相关文章
- 李洪强iOS开发Swift篇—05_元组类型
李洪强iOS开发Swift篇—05_元组类型 一.元组类型介绍 1.什么是元组类型 元组类型由 N个 任意类型的数据组成(N >= 0),组成元组类型的数据可以称为“元素” 示例: let po ...
- iOS开发Swift篇(01) 变量&常量&元组
iOS开发Swift篇(01) 变量&常量&元组 说明: 1)终于要写一写swift了.其实早在14年就已经写了swift的部分博客,无奈时过境迁,此时早已不同往昔了.另外,对于14年 ...
- 李洪强iOS开发Swift篇---11_变量&常量&元组
李洪强iOS开发Swift篇---11_变量&常量&元组 说明: 1)终于要写一写swift了.其实早在14年就已经写了swift的部分博客,无奈时过境迁,此时早已不同往昔了.另外,对 ...
- iOS开发Swift篇—(三)字符串和数据类型
iOS开发Swift篇—(三)字符串和数据类型 一.字符串 字符串是String类型的数据,用双引号""包住文字内容 let website = "http://www ...
- iOS开发Swift篇—(七)函数(1)
iOS开发Swift篇—(七)函数 一.函数的定义 (1)函数的定义格式 func 函数名(形参列表) -> 返回值类型 { // 函数体... } (2)形参列表的格式 形参名1: 形参类型1 ...
- 李洪强iOS开发Swift篇—07_函数
李洪强iOS开发Swift篇—07_函数 一.函数的定义 (1)函数的定义格式 1 func 函数名(形参列表) -> 返回值类型 { 2 // 函数体... 3 4 } (2)形参列表的格式 ...
- 李洪强iOS开发Swift篇—03_字符串和数据类型
李洪强iOS开发Swift篇—03_字符串和数据类型 一.字符串 字符串是String类型的数据,用双引号""包住文字内容 let website = "http:// ...
- iOS开发Swift篇—(七)函数
iOS开发Swift篇—(七)函数 一.函数的定义 (1)函数的定义格式 1 func 函数名(形参列表) -> 返回值类型 { 2 // 函数体... 3 4 } (2)形参列表的格式 形参名 ...
- iOS开发Swift篇—(四)运算符
iOS开发Swift篇—(四)运算符 一.运算符 1.Swift所支持的部分运算符有以下一些 赋值运算符:= 复合赋值运算符:+=.-= 算术运算符:+.-.*./ 求余运算符:% 自增.自减运算符: ...
随机推荐
- SQL语法粗整理
1.在同一张表中,对前一条数据进行更新性插入操作,即:
- $.each()
以下内容非原创 通过它,你可以遍历对象.数组的属性值并进行处理. 使用说明 each函数根据参数的类型实现的效果不完全一致: 1.遍历对象(有附加参数) $.each(Object, function ...
- [CrunchBang]tint2默认设置
#--------------------------------------------- # TINT2 CONFIG FILE #-------------------------------- ...
- sqlyong64位破解
姓名(Name):cr173 序列号(Code):8d8120df-a5c3-4989-8f47-5afc79c56e7c 或者(OR) 姓名(Name):cr173 序列号(Code):59adfd ...
- 关于学习Knockoutjs--入门(二)
这两天终于闲一丢丢了,可以有多点时间学习一下拉.接下来要写到的还是Knockoutjs. Knockout是建立在以下3个核心功能之上的: 1. 属性监控与依赖跟踪 2. 声明式绑定 3. 模版机制 ...
- SendMessage
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- 关于jstl标签引入的问题
1.源码: <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> < ...
- 20160330001 调用及触发Office Outlook 约会
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...
- 再谈Bellman-Ford
这几天学校女生节,挺累的,感觉还是挺好玩的,前几天看了一下最短路,Bellman-fort算法果然比较厉害,今天又参考了刘汝佳的两本书,有了一点新的认识. 废话不说,先上代码: #include &l ...
- [问题2014A09] 解答
[问题2014A09] 解答 通过简单的计算可得 \[(AB)^2=9AB,\cdots\cdots(1)\] 将 (1) 式的右边移到左边, 并将 \(A,B\) 分别提出可得 \[A(BA-9I ...