在第六天開始前,先祝各位朋朋中秋節快樂!
在寫程式時,時常必須根據不同的狀況做出不同的對應機制,而處理的這件事情就叫做流程控制。
在 Go 有兩種方式可以負責處理這件事,一種是 if
另一種是 switch
。
如果已經準備好了,那我們就開始吧 ─=≡Σ(((っ゚∀゚)っ
以 if
為開頭,並在 ()
內寫上條件,透過判斷條件是否為 true
才執行 {}
內的程式碼。
if(條件) {
// 如果條件成立,就執行 {} 內的程式碼
}
來個範例執行看看吧:
package main
import "fmt"
func main() {
age := 13
if age < 18 {
fmt.Println("未成年")
}
}
另外值得注意的是, ()
是可以被省略的,但是 {}
必須存在。
if age < 18 {
fmt.Println("未成年")
}
登登,狀況題一來了!
如果想要是成年人的狀況也能印出文字的話,是不是就要寫兩次if
了?
NO! 其實 if
後面還能再多帶 else
,這樣在條件不成立時,就會讓流程進入 else
的 {}
內。
if(條件) {
// 如果條件成立,就執行 {} 內的程式碼
} else {
// 如果條件不成立,就執行此 {} 內的程式碼
}
package main
import "fmt"
func main() {
age := 13
if age < 18 {
fmt.Println("未成年")
} else {
fmt.Println("成年")
}
}
登登愣,狀況題二來了!
欸...可以多幫我分類一個 70 歲以上的是老年人嗎?
這種情況,可以用 if...else if...else...
的方法。
if(條件) {
// 如果條件成立,就執行此 {} 內的程式碼
} else if (條件2) {
// 如果條件2成立,就執行此 {} 內的程式碼
} else {
// 如果條件不成立,就執行此 {} 內的程式碼
}
package main
import "fmt"
func main() {
age := 13
if age < 18 {
fmt.Println("未成年")
} else if age < 70 {
fmt.Println("成年")
} else {
fmt.Println("老年")
}
}
如果已經很確定要判斷的內容會是哪些,用 switch
的方式就能夠寫出更好閱讀的程式碼。
swich 變數或運算式 {
case 條件1:
// 執行內容
case 條件2:
// 執行內容
default:
// 當所有條件都不符合,就執行 default
}
package main
import "fmt"
func main() {
weather := "晴天"
switch weather {
case "雨天":
fmt.Println("帶雨傘!")
case "陰天":
fmt.Println("加件外套")
default:
{
fmt.Println("擦防曬!")
}
}
}
總算在中秋節前壓線成功(抖到爆
第六天的內容就到這邊結束,如果有任何問題歡迎與我告知 :)