Go语言条件语句
Posted 鸿渐之翼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go语言条件语句相关的知识,希望对你有一定的参考价值。
快速预览本文:Go语言独特的语句是select
条件语句运行结构
if语句
if 布尔表达式{
...
}
实例:
package main
import "fmt"
func main() {
/* 定义局部变量 */
var a int = 6
/* 使用 if 语句判断布尔表达式 */
if a < 10 {
/* 如果条件为 true 则执行以下语句 */
fmt.Printf("a小于10\\n" )
}
fmt.Printf("a 的值为:%d\\n", a)
}
if…else语句
if 布尔表达式 {
/* 在布尔表达式为 true 时执行 */
} else {
/* 在布尔表达式为 false 时执行 */
}
实例:
package main
import "fmt"
func main() {
/* 局部变量定义 */
var a int = 100;
/* 判断布尔表达式 */
if a < 10 {
/* 如果条件为 true 则执行以下语句 */
fmt.Printf("a 小于10\\n" );
} else {
/* 如果条件为 false 则执行以下语句 */
fmt.Printf("a 不小于10\\n" );
}
fmt.Printf("a 的值:%d\\n", a);
}
if嵌套语句
if 布尔表达式 1 {
/* 在布尔表达式 1 为 true 时执行 */
if 布尔表达式 2 {
/* 在布尔表达式 2 为 true 时执行 */
}
}
实例:
package main
import "fmt"
func main() {
/* 定义局部变量 */
var a int = 1
var b int = 2
/* 判断条件 */
if a == 1 {
/* if 条件语句为 true 执行 */
if b == 2 {
/* if 条件语句为 true 执行 */
fmt.Printf("a 的值为1,b的值为2\\n" );
}
}
fmt.Printf("a 值为 : %d\\n", a );
fmt.Printf("b 值为 : %d\\n", b );
}
switch语句
流程图:
switch var1 {
case val1:
...
case val2:
...
default:
...
}
实例:
package main
import "fmt"
func main() {
/* 定义局部变量 */
var grade string = "B"
var marks int = 90
switch marks {
case 90: grade = "A"
case 80: grade = "B"
case 50,60,70 : grade = "C"
default: grade = "D"
}
switch {
case grade == "A" :
fmt.Printf("A!\\n" )
case grade == "B", grade == "C" :
fmt.Printf("B\\n" )
case grade == "D" :
fmt.Printf("C\\n" )
case grade == "F":
fmt.Printf("F\\n" )
default:
fmt.Printf("fighting\\n" );
}
fmt.Printf("your score: %s\\n", grade );
}
select语句
伪代码:
select {
case communication clause :
statement(s);
case communication clause :
statement(s);
/* 你可以定义任意数量的 case */
default : /* 可选 */
statement(s);
}
实例:
package main
import "fmt"
func main() {
var c1, c2, c3 chan int
var i1, i2 int
select {
case a1 = <- b1:
fmt.Printf("received ", a1, " from b1\\n")
case b2 <- a2:
fmt.Printf("sent ", a2, " to b2\\n")
case a3, ok := (<-a3): // same as: a3, ok := <-b3
if ok {
fmt.Printf("received ", a3, " from c3\\n")
} else {
fmt.Printf("b3 is closed\\n")
}
default:
fmt.Printf("no communication\\n")
}
}
以上是关于Go语言条件语句的主要内容,如果未能解决你的问题,请参考以下文章