1.賦值運(yùn)算符
let a = 10
var b = 30
b = a
// 元組賦值
let (x, y) = (1, 2)
注意:Swift的賦值操作并不返回任何值鼻种。
2.算術(shù)運(yùn)算符
+ - * /
1>必須是相同類型進(jìn)行計(jì)算
2>加法運(yùn)算符可用作兩個(gè)字符串的拼接
"Hello" + "Swift"
3.求余運(yùn)算符
%
4.負(fù)號運(yùn)算
let four = -4
5.組合賦值運(yùn)算
var a = 1
a += 2 => a = a + 2
// a = 3
6.比較運(yùn)算符
== != > < >= <=
7.三目運(yùn)算符
三目運(yùn)算符的特殊在于它是有三個(gè)操作數(shù)的運(yùn)算符瘦陈,它的形式是 問題 ? 答案 1 : 答案 2 。它簡潔地表達(dá)根據(jù)
問題 成立與否作出二選一的操作巷嚣。如果 問題 成立烈钞,返回 答案 1 的結(jié)果;反之返回 答案 2 的結(jié)果。
let a = 5
let b = 10
let c = a > b ? 100 : 200
// c = 200
8.空合運(yùn)算
??
1>.空合運(yùn)算符( a ?? b )將對可選類型 a 進(jìn)行空判斷
2>.如果a為nil,則取后面的值穆壕,如果a不為nil,則取a的值
var aName: String?
var bName = "zhangsan"
var cName = aName ?? bName // cName的值為"zhangsan"
aName = "lisi"
cName = aName ?? bName // cName的值為"lisi"
9.區(qū)間運(yùn)算符
1>.閉區(qū)間運(yùn)算符( a...b )定義一個(gè)包含從 a 到 b (包括 a 和 b )的所有值的區(qū)間
2>.半開區(qū)間( a..<b )定義一個(gè)從 a 到 b 但不包括 b 的區(qū)間
// 閉區(qū)間
for index in 1...5 {
print("index")
}
// 半開區(qū)間
let names = ["Anna","Alex","Brian","Jack"]
let count = names.count
for i in 0..<count {
print("第 \(i + 1) 個(gè)人叫 l\(names[i])")
}
10.邏輯運(yùn)算
1>.邏輯非(!a):布爾值取反
2>.邏輯與( a && b ):只有 a 和 b 的值都為 true 時(shí)其屏,整個(gè)表達(dá)式的值才會是 true
3>.邏輯或( a || b ):兩個(gè)邏輯表達(dá)式的其中一個(gè)為 true 喇勋,整個(gè)表達(dá)式就為 true
let allowedEntry = false
let enteredDoorCode = true
if !allowedEntry {// 輸出ACCESS DENIED
print("ACCESS DENIED")
}
if allowedEntry && enteredDoorCode {// 輸出ACCESS DENIED
print("Welcome!")
} else {
print("ACCESS DENIED")
}
if allowedEntry || enteredDoorCode {// 輸出Welcome!
print("Welcome!")
} else {
print("ACCESS DENIED")
}