Swift教程之基本运算符详解

2020-01-08 22:49:40刘景俊

◎如果运算符在变量之后被写,它在返回其值之后增加变量。

例如:

var a = 0
let b = ++a
// a and b are now both equal to 1
let c = a++
// a is now equal to 2, but c has been set to the pre-increment value of 1
在上面的例子中,let b = ++a 中a在返回其值之前增加,这就是为什么a和b的新值是等于1。

然而,let c = a++ 中a在返回其值之后增加,这意味着c获得a的原值1,然后a自增,a等于2。

除非你需要特定工作情况下才使用i++,否则在所有的情况下建议你使用++i和–i, 因为他们修改i并返回值的行为符合我们的预期。

一元减运算符

一个数值前加了符号-,叫作一元减运算符:

复制代码
let three = 3
let minusThree = -three // minusThree equals -3
let plusThree = -minusThree // plusThree equals 3, or "minus minus three"
一元减运算符(-)直接地被加在前面,在它起作用的值之前,不用任何空白空间。

 

一元加运算符

一元加运算符(+)返回它起作用的值,不做任何变动:

复制代码
let minusSix = -6
let alsoMinusSix = +minusSix // alsoMinusSix equals -6
虽然一元加上运算符实际上不执行什么,当你也使用一元减负数的运算符时,你能使用它提供对称的正数。

 

复合赋值操作符

Swift提供类似C语言的复合赋值操作符,即把赋值和另一个运算合并起来。举个例子,像加法赋值运算符(+ =):