一、if分支陳述句
if 布爾運算式 1 { /* 在布爾運算式 1 為 true 時執行 */}
if a := 2; a%2 == 0 { fmt.Println("偶數")}
if 布爾運算式 1 { /* 在布爾運算式 1 為 true 時執行 */ }else{
/* todo else */
}
if a := 2; a%2 == 0 { fmt.Println("偶數") } else { fmt.Println("奇數") }
if 布爾運算式 1 { /* 在布爾運算式 1 為 true 時執行 */ }else if 布爾運算式 2{
/* 在布爾運算式 1 為 true 時執行 */
}else{ /* todo else */ }
func main() { var b = 70 if b >= 90 { fmt.Println("優秀") } else if b >= 80 { fmt.Println("良好") } else { fmt.Println("及格") }}
二、for回圈陳述句
func main() { //=======格式1=========== for i := 0; i < 10; i++ { fmt.Println("i=", i) } //=======格式2=========== a := 2 for ; a < 5; a++ { fmt.Println("a=", a) } //=======格式3(死回圈)==== b := 10 for { if b == 5 { break } b-- fmt.Println("b=", b) }}
break 陳述句用于在完成正常執行之前,突然終止 for 回圈,
func main() { //=======格式1=========== for i := 0; i < 10; i++ { if i >= 5 { break } fmt.Println("i=", i) }}
輸出:i= 0;i= 1;i= 2;i= 3;i= 4continue 陳述句用來跳出 for 回圈中當前回圈,在 continue 陳述句后的所有的 for 回圈陳述句都不會在本次回圈中執行,回圈體會在一下次回圈中繼續執行,
func main() { for i := 0; i < 5; i++ { if i == 3 { continue } fmt.Println("i=", i) }}
輸出:i= 0;i= 1;i= 2;i= 4
goto 陳述句類似continue終止當前回圈,進入指定的位置(Loop)繼續運行
func main() { num := 0Loop: for num < 5 { num++ if num%4 == 0 { goto Loop } fmt.Println("i=", num) }}
三、swich分支陳述句
go語言中的switch陳述句默認每個case 都有break,這與java語言略有不同
func main() { //=========== 格式一 =========== switch finger := 3; finger { case 1: fmt.Println("1") case 2: fmt.Println("2") case 3: fmt.Println("3") default: fmt.Println("0") } //===========case后可以多個條件=========== letter := "i" switch letter { case "a", "e", "i", "o", "u": // 一個選項多個運算式 fmt.Println("hello") default: fmt.Println("word") } //在 switch 陳述句中,運算式是可選的,可以被省略,如果省略運算式,則表示這個 switch 陳述句等同于 switch true num := 75 switch { // 運算式被省略了 case num >= 0 && num <= 50: fmt.Println("num is greater than 0 and less than 50") case num >= 51 && num <= 100: fmt.Println("num is greater than 51 and less than 100") case num >= 101: fmt.Println("num is greater than 100") }}
fallthrough陳述句:在 Go 中,每執行完一個 case 后,會從 switch 陳述句中跳出來,不再做后續 case 的判斷和執行,使用 fallthrough 陳述句可以在已經執行完成的 case 之后,把控制權轉移到下一個 case 的執行代碼中,類似于java 中case之后不寫break
func main() { //=========== 格式一 =========== switch finger := 3; finger { case 1: fmt.Println("1") case 2: fmt.Println("2") case 3: fmt.Println("3") fallthrough default: fmt.Println("0") }}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/67368.html
標籤:Go
上一篇:刷14道leetcode的總結
下一篇:GO基礎之函式的高級用法
