02从零开始学习GO语言,19 Go 语言的分支语句丨慕课网教程

本文主要学习 Go 语言中的分支语句。一共要介绍的有两个,分别是 if…else 和 switch…case。他们二者在 Go 语言中都做了新的功能拓展。

Tips:其中还有一个分支语句 select…case 我们将在 Go 语言的通道中介绍。

1. if…else

在 Go 语言中 if 关键字的作用和其它大部分语言相同,是用于测试某个布尔表达式或布尔值是否为真的。若为真则执行 if 之后 {} 中的语句,否则跳过这些语句。如果存在第二个分支,则需要使用 else 关键字,还需要增加分支的话就需要使用 else if 关键字了。

示例代码:

package mainimport "fmt"func main() {a := 10if a > 10 {fmt.Println("a大于10")} else if a10 {//赋值表达式和条件表达式之间使用;隔开fmt.Println("a大于10")} else {fmt.Println("a的值是", a)}}

执行结果:

图片描述

2. switch…case

Go 语言对 switch…case 的功能进行了扩展,它变得更加的通用。switch 之后可以什么都不带。case 也无需是一个固定值,也可以是一个布尔表达式,而且每一个 case 都是一个 独立的代码块,执行完了之后立刻跳出 switch,不需要使用break。所以可以把 if…else 完美的改写成 switch…case 的形式。

Tips:还有一种 switch 语句叫做 type switch,我们将在学习接口时介绍它

switch…case 传统用法代码示例:

package mainimport "fmt"func main() {a := "A"switch a {case "A", "a":fmt.Println("分数区间为90~100")case "B", "b":fmt.Println("分数区间为70~89")case "C", "c":fmt.Println("分数区间为0~70")default:fmt.Println("错误的评分")}}第 7 行:和传统用法一致,去求变量 A 的值和那个 case 匹配;第 8 行:case 后面的值使用逗号隔开,用于表示匹配任意一个值;第 14 行:每一个 switch 中最多可以带一个 default。

输出结果:

图片描述

switch…case Go 语言中的新用法:

package mainimport "fmt"func main() {a := 50switch {case a
047用心做饭的王哥求收藏鲜花024合作求收藏南京师范大学研究生官网第614章叶先生拜托了二更虎妈猫爸唐琳剑道虎妈猫爸罗素出轨06606诺辉健康08686华夏棋牌07实体店的99个价格04机关宅邸00后年轻人的生活状态0397是哪个城市的区号0805千玺发生了什么00后的人生价值观总结07三月未归的他回来了0327版主推荐阴客TXT下载全本作者00开头的股票是什么股票00开头是什么股票03918金界控股2018中期报告056开车了08年度侍酒师界风云人物榜013好香好柔软