《iOS移动开发从入门到精通》图书连载12:元组类型、一元、二元和三元运算符、 比较运算符

3.2.5 元组类型

元组是一个包含了若干个相关联变量的对象。

1        let people = ("John",33)

 

由于Swift的类型推导,people被推导为(String, Int)类型的常量。

元组作为一个临时复合值,元组在某些时候是非常有用的。它经常被用作函数返回值,用来传递一些数据。

例如一个用来获取网页的函数,可能会返回一个(Int, String)元组,用来描述是否获取成功。和只能返回一个类型的值比较起来,一个包含两个不同类型值的元组,可以让函数的返回信息更加有用:

1     let http404Error = (404,"Not Found")
2     let http200Status =(statusCode:200, description:"OK")
 

从一个元组中单独取出某一个数据,有两种方式。第一种方式是使用下标:

1     let http404Error = (404,"Not Found")
2     print("errorCode =\(http404Error.0)")           // 输出结果为:errorCode = 404

 

第二种方式如下:

1     let http404Error = (404,"Not Found")
2     let (errorCode, errorMessage) =http404Error
3     print("errorCode =\(http404Error.0)")           // 输出结果为:errorCode = 404
 

如果之前是按照键值对创建的元组,可以按照访问属性的形式来获取相关的值:

1     let people = (name:"John",age:33)
2     print("People's name is\(people.name), and age is \(people.age).")

 

元组在临时组织数据的时候很有用,但是并不适合创建复杂的数据结构。如果你的数据结构并不是临时使用,请使用类或者结构体而不是元组。



3.2.6 一元、二元和三元运算符

运算符是一种特定的符号或表达式,用来检验、修改或合并变量。例如,用于求和的运算符+,可以对两个数字进行求和,还有逻辑运算符&&等等。

运算符都是一元、二元或三元的。其中一元运算符用于处理单个对象,一元前缀运算符出现在对象前,一元后缀运算符出现在对象的后面。

 

一元减号和加号

在一个数值的前面,添加的一个-减号,叫作一元减运算符。同样在数值前面添加的+加号,被称为一元加运算符,它们的用法如下:

1     let one = 1
2     let minusOne = -one                              //结果为:-1
3     let plusOne = +one                                 //结果为:1
4     let anotherOne = -minusOne                //结果为:1

 

一元逻辑非运算符

在数值的前面,添加!感叹号运算符,可以对逻辑数值进行逻辑非运算。

1     let isHero = false                                     
2     let playerType = !isHero                          //结果为:true

 

请注意无论是减号、加号还是感叹号运算符,它们与右侧的数值之间不能有空格。

另外++递增和--递减等在Swift1.0版本中出现的一元运算符,在新版的Swift语言中已经被移除,这里就不再进行讲解。

 

二元运算符

二元运算符是用来对两个目标进行操作的,所以二元运算符常常出现在两个数值之间的位置。如常用的加、减、乘、除数学运算符:

1     3 + 2                                                          //结果为:5
2     3 - 2                                                          //结果为:1
3     3 * 2                                                           //结果为:6
4     3 / 2                                                           //结果为:1

 

余数运算符( x % y )可以求出多少个 y 的倍数能够刚好放进 x中,并且返回剩下的值,也就是余数。在Swift中您可以对正数、负数进行取余计算:

1     5 % 2                                                          //结果为:1
2     -5 % 2                                                        //结果为:-1

 

三元条件运算符

三元运算符拥有三个部分,它看起来是这样的:question ? answer1 :answer2。这是一种基于question是真还是假,来选择后面两个表达式之一的便捷写法。如果question是真,则会返回answer1,否则返回answer2。

1     let score = 66
2     let result = (score >= 60) ?"通过考核" : "未通过考核"             //结果为:通过考核
 

三元条件运算符提供了一个非常有效的简写,以根据指定的条件作出相应的选择。



3.2.7 比较运算符

您会经常使用比较运算符,对两个数值进行比较,从而根据比较结果,进行相应的操作。Swift支持所有C语言的标准比较运算符。每个比较运算符都会返回一个Boolean值,来表示语句是否为真:

1     2 > 1                                       //结果为:true
2     2 < 1                                       //结果为:false
3     2 >= 1                                    //结果为:true
4     2 <= 1                                    //结果为:false
5     2 == 1                                    //结果为:false
6     2 != 1                                      //结果为:true

 

比较运算符通常被用在if条件语句当中:

1     let workingAge = 18
2     if workingAge >= 15
3     {
4         print("享受15天年假")
5     }

 

拥有同样值数量的元组也可以进行比较,前提是元组中的值是可以比较的。元组以从左到右的顺序,进行值大小的比较,直到找到两个不相等的值为止。如果两个元组的所有值都相同,则两个元组被认为是相等的:

1     (2, 3) > (1, 3)                                             //结果为:true
2     ("Class1", 98) >("Class2", 54)                           //结果为:false
3     (7, "Sunday") == (7,"Sunday")               //结果为:true

 






  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李发展

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值