条件语句用于依据不同的条件执行不同的操作。

Go中的条件能够是真或假。

Go反对数学中常见的比拟运算符:

小于 < 小于等于 <= 大于 > 大于等于 >= 等于 == 不等于 != 此外,Go还反对常见的逻辑运算符:

逻辑与 && 逻辑或 || 逻辑非 ! 您能够应用这些运算符或它们的组合来创立不同决策的条件。

示例 尝试一下 x > y x != y (x > y) && (y > z) (x == y) || z

Go具备以下条件语句:

  • 应用if来指定在指定条件为真时执行的代码块
  • 应用else来指定在雷同条件为假时执行的代码块
  • 应用else if来指定要测试的新条件,如果第一个条件为假
  • 应用switch来指定要执行的多个备选代码块

if语句

应用if语句来指定在条件为真时执行的一段Go代码。

语法

if 条件 {  // 如果条件为真,则执行的代码}

请留神,if关键字要小写。大写字母(If或IF)会导致谬误。

在上面的示例中,咱们测试了两个值,以确定20是否大于18。如果条件为真,则打印一些文本:

示例

package mainimport ("fmt")func main() {  if 20 > 18 {    fmt.Println("20 大于 18")  }}

咱们也能够测试变量:

示例

package mainimport ("fmt")func main() {  x := 20  y := 18  if x > y {    fmt.Println("x 大于 y")  }}

示例解释

在下面的示例中,咱们应用了两个变量x和y,测试x是否大于y(应用>运算符)。因为x为20,y为18,咱们晓得20大于18,所以咱们打印出"x 大于 y"。

else语句

应用else语句来指定在条件为假时执行的一段代码。

语法

if 条件 {  // 如果条件为真,则执行的代码} else {  // 如果条件为假,则执行的代码}

应用if else语句的示例:

示例

在此示例中,工夫(20)大于18,因而if条件为假。因而,咱们转而执行else条件,并在屏幕上打印"早晨好"。如果工夫小于18,程序将打印"白天好":

package mainimport ("fmt")func main() {  工夫 := 20  if 工夫 < 18 {    fmt.Println("白天好。")  } else {    fmt.Println("早晨好。")  }}

示例

在此示例中,温度为14,因而if的条件为假,因而执行else语句中的代码行:

package mainimport ("fmt")func main() {  温度 := 14  if 温度 > 15 {    fmt.Println("里面和煦。")  } else {    fmt.Println("里面凛冽。")  }}

else语句中的括号应该像} else {这样写:

示例

将else的括号放在不同的行会引发谬误:

package mainimport ("fmt")func main() {  温度 := 14  if 温度 > 15 {    fmt.Println("里面和煦。")  } // 这将引发谬误  else {    fmt.Println("里面凛冽。")  }}

后果:

./prog.go:9:3: 语法错误:意外的 else,冀望 }

else if 语句

应用 else if 语句在第一个条件为假时指定新条件。

语法:

if 条件1 {    // 如果条件1为真时执行的代码} else if 条件2 {    // 如果条件1为假且条件2为真时执行的代码} else {    // 如果条件1和条件2都为假时执行的代码}

应用 else if 语句的示例:

package mainimport (    "fmt")func main() {    time := 22    if time < 10 {        fmt.Println("早上好。")    } else if time < 20 {        fmt.Println("白天好。")    } else {        fmt.Println("早晨好。")    }}

后果:

早晨好。

示例解释:

在下面的示例中,工夫(22)大于10,因而第一个条件为假。接下来,在 else if 语句中的下一个条件也为假,因而咱们转向 else 条件,因为条件1和条件2都为假,所以输入屏幕上显示 "早晨好"。

然而,如果工夫为14,咱们的程序将打印 "白天好"。

另一个 else if 的示例:

package mainimport (    "fmt")func main() {    a := 14    b := 14    if a < b {        fmt.Println("a 小于 b。")    } else if a > b {        fmt.Println("a 大于 b。")    } else {        fmt.Println("a 和 b 相等。")    }}

后果:

a 和 b 相等。

留神:

如果条件1和条件2都为真,则仅执行条件1的代码。

嵌套的 if 语句

您能够在 if 语句外部应用 if 语句,这称为嵌套的 if。

语法:

if 条件1 {    // 如果条件1为真时执行的代码    if 条件2 {        // 如果条件1和条件2都为真时执行的代码    }} else {    // 如果条件1为假时执行的代码}

嵌套 if 语句的示例:

package mainimport (    "fmt")func main() {    num := 20    if num >= 10 {        fmt.Println("Num 大于等于 10。")        if num > 15 {            fmt.Println("Num 也大于 15。")        }    } else {        fmt.Println("Num 小于 10。")    }}

后果:

Num 大于等于 10。Num 也大于 15。

最初

为了不便其余设施和平台的小伙伴观看往期文章,链接奉上:

公众号搜寻Let us Coding知乎开源中国CSDN思否掘金InfoQ简书博客园慕课51CTOhelloworld腾讯开发者社区阿里开发者社区

看完如果感觉有帮忙,欢送点赞、珍藏关注