A Tour of Go: Basics 2
阿新 • • 發佈:2018-10-08
原則 panic https 動作 語言 表達 包括 for cas For
For語句有三個基本部分組成,以分號隔開:
- 初始語句:只在第一次循環開始前執行,通常就是變量定義和初始化,這裏定義的變量作用範圍只在For循環本身。
- 條件表達式:每一次循環開始前執行,當false結束循環。
- post語句:每一次循環結束後執行。
技巧:
- 初始語句和post語句是可以省略的。
- 條件表達式也可以省略,就是死循環。
- Go語言只有一個循環結構,就是for語句。while語句在Go中也是由for表示。
// for sum := 1 for ; sum < 1000; { sum += sum } // while sum := 1 for sum < 1000 { sum += sum }
註意點:
- 與其他語言不同,三個語句不需要用括號括起來。
- 循環體需要用大括號括起來。
If
跟for一樣,if語句可以包含一個初始語句,作用範圍限於if本身(包括else)。同樣地,if語句也不需要小括號,但是需要大括號。
Switch
Switch是if else語句在某些場景下的更好選擇。匹配到等於condition的case並執行,然後停止switch,不需要顯式break。
同樣可以有初始語句。
條件可以為空,表示switch true。
Defer
推遲到周圍函數都執行完以後再執行。
被推遲的函數是放在stack裏的,因此遵循後進先出原則。
應用場景比如用於清理動作等,參見:https://blog.golang.org/defer-panic-and-recover
A Tour of Go: Basics 2