var a = 1 //= assignment operator
var b = ++a //++ unary prefix operator
var c = -a //- unary postfix operator
var d = b+c //+ binary operator
true ? "😀" : "😢" //?: ternary operator
指派運算子 (Assignment Operator),用來初始化或更新變數的值。
let b = 10
var a = 5
a = b // a 現在等於 10
數值運算子(Arithmetic Operator)如下:
var x = 5
x + 2 //=7
x - 2 //=3
x * 2 //=10
x / 2 //=2
x % 2 //=1
++x //=6
--x //=5
+x //=5
-x //=-5
複合指派運算子 (Compound Assignment Operator) 把其他運算子和指派運算子=
組合起來。
var a = 1
a += 2 // a 現在是 3
比較運算子 (Comparison Operator) 如下:
==
!=
>
<
>=
<=
1 == 1 // true
2 != 1 // true
2 > 1 // true
1 < 2 // true
1 >= 1 // true
2 <= 1 // false
三元條件運算(Ternary Conditional Operator)簡潔地表達根據問題成立與否作出二選一的操作。例如問題?答案1:答案2
,如果問題
成立,回傳答案1
的結果; 如果不成立,回傳答案2
的結果。
var num = -10
var abs: Int
if num > 0 { //囉唆的寫法
abs = num
} else {
abs = -num
}
abs = num > 0 ? num : -num //簡潔的寫法