乐趣区

关于go:Go-条件

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

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 main
import ("fmt")

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

咱们也能够测试变量:

示例

package main
import ("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 main
import ("fmt")

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

示例

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

package main
import ("fmt")

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

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

示例

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

package main
import ("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 main

import ("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 main

import ("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 main

import ("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 腾讯开发者社区 阿里开发者社区

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

退出移动版