Go語言中的條件語句用于根據(jù)不同的條件執(zhí)行不同的代碼塊。Go語言提供了if語句和switch語句兩種常用的條件語句。
- if語句:
if語句用于在滿足給定條件時(shí)執(zhí)行特定的代碼塊。它的基本語法如下:
if condition {
// 條件滿足時(shí)執(zhí)行的代碼塊
} else if condition {
// 條件滿足時(shí)執(zhí)行的代碼塊
} else {
// 所有條件都不滿足時(shí)執(zhí)行的代碼塊
}
下面是一個(gè)使用if語句的示例:
package main
import "fmt"
func main() {
num := 10
if num > 0 {
fmt.Println("Number is positive")
} else if num < 0 {
fmt.Println("Number is negative")
} else {
fmt.Println("Number is zero")
}
}
在上面的示例中,根據(jù)變量num的值,不同的條件分支將被執(zhí)行。
- switch語句:
switch語句用于根據(jù)不同的表達(dá)式值執(zhí)行相應(yīng)的代碼塊。它的基本語法如下:
switch expression {
case value1:
// expression等于value1時(shí)執(zhí)行的代碼塊
case value2:
// expression等于value2時(shí)執(zhí)行的代碼塊
...
default:
// 所有case都不滿足時(shí)執(zhí)行的代碼塊
}
下面是一個(gè)使用switch語句的示例:
package main
import "fmt"
func main() {
day := "Monday"
switch day {
case "Monday":
fmt.Println("Today is Monday")
case "Tuesday":
fmt.Println("Today is Tuesday")
case "Wednesday":
fmt.Println("Today is Wednesday")
default:
fmt.Println("Today is not Monday, Tuesday, or Wednesday")
}
}
在上面的示例中,根據(jù)變量day的值,不同的case將被匹配執(zhí)行相應(yīng)的代碼塊。
需要注意的是,在Go語言的條件語句中,條件表達(dá)式的結(jié)果必須是布爾類型,而且大括號(hào) {} 是必需的,即使代碼塊只有一行。
當(dāng)然,我可以為您提供更多關(guān)于Go語言條件語句的信息和示例。
-
if語句的高級(jí)用法:
- 可以在if語句中使用短變量聲明來定義并初始化一個(gè)變量,然后在條件判斷中使用該變量。示例:
if num := 10; num > 0 { fmt.Println("Number is positive") } - if語句的條件判斷部分可以省略,只保留條件表達(dá)式,相當(dāng)于判斷條件表達(dá)式的結(jié)果是否為true。示例:
num := 10 if num > 0 { fmt.Println("Number is positive") }
- 可以在if語句中使用短變量聲明來定義并初始化一個(gè)變量,然后在條件判斷中使用該變量。示例:
-
switch語句的高級(jí)用法:
- case語句可以同時(shí)匹配多個(gè)值,使用逗號(hào)分隔。示例:
day := "Saturday" switch day { case "Saturday", "Sunday": fmt.Println("It's the weekend") default: fmt.Println("It's a weekday") } - switch語句的表達(dá)式可以省略,相當(dāng)于將true作為表達(dá)式??梢耘ccase語句的條件進(jìn)行比較,執(zhí)行第一個(gè)匹配到的case代碼塊。示例:
num := 5 switch { case num > 0 && num < 10: fmt.Println("Number is between 1 and 9") case num >= 10: fmt.Println("Number is 10 or greater") } - fallthrough關(guān)鍵字用于在滿足某個(gè)case后,繼續(xù)執(zhí)行下一個(gè)case的代碼塊,而不進(jìn)行條件判斷。示例:
num := 2 switch num { case 1: fmt.Println("One") fallthrough case 2: fmt.Println("Two") case 3: fmt.Println("Three") }
- case語句可以同時(shí)匹配多個(gè)值,使用逗號(hào)分隔。示例:
這些是一些Go語言條件語句的常用用法和示例。希望能對(duì)您有所幫助!