Go 语言条件语句 (if, if...else, 嵌套if)
编程中的决策类似于现实生活中的决策。在决策中,当满足给定条件时执行一段代码。有时,这些也称为控制流语句。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") } }
输出:
没有匹配的值