编程中的决策类似于现实生活中的决策。在决策中,当满足给定条件时执行一段代码。有时,这些也称为控制流语句。Golang使用指定语句根据某些条件指定程序的执行流程。这些用于根据程序状态的更改使执行流程前进和分支。
Go编程的决策语句为:
if 语句
这是最简单的决策。它用于决定是否执行某个语句或语句块,即,如果某个条件为真,则执行语句块,否则不执行。
语法:
if(condition) {
//if要执行的语句
//condition为真
}
流程图:
范例:
//使用if语句
package main
import "fmt"
func main() {
//取局部变量
var v int = 700
//使用if语句
//检查条件
if v < 1000 {
//打印以下内容,条件评估为true
fmt.Printf("v小于1000\n")
}
fmt.Printf("v的值是 : %d\n", v)
}
输出:
v小于1000
v的值是 : 700
if…else 语句
if语句告诉我们,如果条件为true,它将执行语句块,如果条件为false,则不会执行。但是如果条件为false,我们想做其他事情怎么办;那就要用到else语句。当条件为false时,可以将else语句与if语句一起使用以执行代码块。
语法:
if (condition) {
// if条件为true,执行此代码块
} else {
// if条件为false,执行此代码块
}
流程图:
// 使用 if...else 语句
package main
import "fmt"
func main() {
//局部变量
var v int = 1200
// 使用if语句检查条件
if v < 1000 {
//打印以下内容,如果条件评估为true
fmt.Printf("v < 1000\n")
} else {
//打印以下内容,如果条件评估为false
fmt.Printf("v > 1000\n")
}
}
输出:
v > 1000
嵌套if 语句
在Go语言中,一个嵌套的if是一个if语句,它是另一个if或else的目标。嵌套if语句是指if语句中的if语句。是的,Golang允许我们在if语句中嵌套if语句。我。我们可以把一个if语句放在另一个if语句中。
语法:
if (condition1) {
// 当条件1为真时执行
if (condition2) {
// 当条件2为真时执行
}
}
流程图:
//使用嵌套if语句
package main
import "fmt"
func main() {
//两个局部变量
var v1 int = 400
var v2 int = 700
//使用if语句
if( v1 == 400 ) {
// if条件为true时执行
if( v2 == 700 ) {
// if条件为true时,执行打印输出
fmt.Printf("v1的值是400,v2的值是700\n" );
}
}
}
输出:
v1的值是400,v2的值是700
if..else..if 语句
在这里,用户可以在多个选项中进行选择。if语句从上至下执行。一旦if的任意条件为true,则将执行与if关联的语句,并跳过其余的if语句。如果所有条件都不成立,则将执行最终的else语句。
重要事项:
if语句可以有0个或1个if,并且必须在其他if后面。
if语句可以有0到多个if,并且必须在else之前
如果else if成功,其余的else if 或else 都不会被执行
语法:
if(condition_1) {
//condition_1为true,执行这里的代码块
} else if(condition_2) {
//condition_2为true,执行这里的代码块
}else {
//没有条件为true时,执行这里代码块
}
流程图:
package main
import "fmt"
func main() {
var v1 int = 700
if(v1 == 100) {
// 如果条件为真,则显示以下内容
fmt.Printf("v1的值是100\n")
} else if(v1 == 200) {
fmt.Printf("v1的值是200\n")
} else if(v1 == 300) {
fmt.Printf("v1的值是300\n")
} else {
//如果条件都不为真
fmt.Printf("没有匹配的值\n")
}
}
输出:
没有匹配的值