长沙网站设计公司排名,南宁网站建设加q.479185700,做网站就是做信息整合,徐州市建设局官方网站Go语言流程控制 选择结构if语句switch语句 循环结构for循环range 跳转语句 Go语言支持最基本的三种程序结构
顺序结构选择结构循环结构
选择结构
if语句
Go语言中的if语句是没有括号的
代码演示如下 var a int 3 // 因为a 3 所以说只会输出3if a 3 {fmt.Println( 3 // 因为a 3 所以说只会输出3if a 3 {fmt.Println(a 3) }if a 4 {fmt.Println(a 4)}此外Go语言的if语句还支持一个初始化表达式
始化表达式和条件表达式之间要用分号隔开
if b:3 ; b 3{ // 初始化表达式和条件表达式之间要用分号隔开 if … else if … else Go语言和C中if语句的差别主要是有两点
Go语言中的if elseif等后面条件不加括号Go语言的大括号禁止换行
代码表示如下 // test if ... else ...var a int 5if a 3 {fmt.Println(a 3)}else if a 4 {fmt.Println(a 4)}else {fmt.Println(a ! 3)}switch语句
Go语言的switch语句和C中的switch语句不同的是 Go语言中的case语句后面默认带着break 所以说我们不用像C一样后面加上break了
代码示例如下 // test switch case var score int 90switch score{case 90:fmt.Println(优秀)case 80:fmt.Println(良好)case 70 , 60 , 50 :fmt.Println(一般)default:fmt.Println(差)}如果我们想要强制执行后面的代码 只需要在执行语句后面加上一个 fallthrough 即可 // test switch case var score int 90switch score{case 90:fmt.Println(优秀)fallthroughcase 80:fmt.Println(良好)case 70 , 60 , 50 :fmt.Println(一般)default:fmt.Println(差)}如果我们不指定switch的变量 我们还可以使用条件表达式来case 比如说 var score int 90switch { // 不switch变量case score 90:fmt.Println(优秀)default:fmt.Println(差)}循环结构
**这里需要注意的是 go语言没有while循环 **
for循环
for循环和C的唯一区别就是不加括号
代码示例如下
func test5() {var sum int 0 var i int 0for i 0; i 10; i{sum i}fmt.Println(sum)
}这里值得注意的一点是 go语言中不允许int a 10 这种写法
range
在Go语言中 我们可以使用range来遍历一个字符串或数组等
关键字range会返回给我们两个值 一个是下标 一个是元素的值
如果说我们只用一个参数接受返回值的话 那么默认就是接受下标 var str string abcde for _ , i : range str { // 舍弃掉下表 只需要stirng中的值fmt.Printf(%c\n , i)}跳转语句
Go语言的跳转语句有三个
breakcontinuegoto
break是跳出当前循环 它在循环语句中都可以使用 而continue只能在for循环中使用
goto的用法也和我们C的用法一样 但是我们不建议使用goto 这会导致执行流乱跳的情况