if-else
- if 后面的條件可以省略小括號(hào)
- 條件后面的大括號(hào)不可以省略
let age = 4
if age >= 22 {
print("能結(jié)婚了")
} else if age >= 18 {
print("成年了")
} else if age >= 7 {
print("可以上學(xué)了")
} else {
print("他還是個(gè)孩子")
}
- if后面的條件只能是bool類型
if age { // error: 'Int' is not convertible to 'Bool'
}
while
- repeat-while 相當(dāng)于C語(yǔ)言中的do-while
- 這里不適用num--。是因?yàn)閺腟wift3開始,去除了自增(++)自減(--)運(yùn)算符 可讀性差,不同編譯器,有不同的結(jié)果

while
for
1、閉區(qū)間運(yùn)算符:a...b,含義a<= 取值 <=b
- 要是i不參與運(yùn)算可以省略(用
_代替,在Swift中,省略都可以使用_代替)

for.png
2、半開區(qū)間運(yùn)算符:a..<b,含義 a <= 取值 < b
for i in 1..<5 {
print(i)
}
// 1 2 3 4
3、單側(cè)區(qū)間: 讓區(qū)間朝一個(gè)方向盡可能的遠(yuǎn)

單側(cè)區(qū)間
4、for- 區(qū)間運(yùn)算符用在數(shù)組上

for
5、區(qū)間類型
- 字符、字符串也能使用區(qū)間運(yùn)算符,但是默認(rèn)不能用在for-in中

區(qū)間類型
6、帶間隔的區(qū)間值

帶間隔的區(qū)間值
from 從哪里開始
through最大值,可以等于
by 間隔
switch
- case 、default后面不能寫大括號(hào)
- break可以省略, 并不會(huì)貫穿到后面的條件

switch
fallthrough
- 使用fallthrough可以實(shí)現(xiàn)貫穿效果

fallthrough
Switch注意點(diǎn)
- swift 必須要保證能處理所有情況,num無窮多個(gè),不只是有1和2

case
- case、default后面至少要有一條語(yǔ)句
- 如果不想做任何事情,加一個(gè)break即可
- 分號(hào)(;) 不能作為一條語(yǔ)句

default
- 如果能保證已處理所有情況,也可以不必使用default

default
復(fù)合條件
- Swift 也支持character、String類型

復(fù)合條件
區(qū)間匹配、元祖匹配
- 可以使用下劃線_忽略某個(gè)值(只要有一個(gè)值符合就行)

匹配
值綁定
- 只要一個(gè)成立,就能獲取另一個(gè)值
- 必要時(shí)let也可以改為var

值綁定
where
- where是過濾某些值,不是退出

where
標(biāo)簽語(yǔ)句
- 用于標(biāo)記是哪一個(gè)for循環(huán),指定結(jié)束的for循環(huán)

標(biāo)簽語(yǔ)句