Go语言基础篇--4.Go语言之【if+switch+for语句】

写在前面:各类程序语言中的if for switch语句的语法基本上是类似的,只需要注意go语言与其他程序语言的不同之处就好。

if语句

特例:go语言中if语句中可以包含变量的申明,但是其作用域仅仅在当前的if语句结构当中可用。

	if num := 99; num >= 60 {
		fmt.Printf("分数为:%d.恭喜及格\n", num)
	} else {
		fmt.Printf("分数为:%d.不及格\n", num)
	}

如上,num在该if-else结构语句当中定义,因此其作用域仅仅在该语句结构当中有效。

switch-case语句

tips:
1.case是无序的
2.case后的数值是唯一的
3.case后可跟随多个数值
4.case后的数值必须与switch作用的变量类型保持一致
5.如果省略了switch后面的变量,则默认是bool类型且作用在true上

go中的fallthrough可穿透当前case到达下一个case,且fallthrough只可放在某个case中的最后一行

for语句

/*
for 表达式1,表达式2,表达式3{\
......
}
*/
for i:=1;i<6;i++ {
	fmt.Printf("i-->%d\n",i)
}
//fmt.Printf(i)//报错,因为i的作用域仅在for结构内有效

只有表达式2时,正常情况下是for ; i<6 ; (…)然鹅go语言中";"可以省略,因此就可写成如下形式。该形式与上述for循环的区别就在于i的作用域发生改变。

i:=1
for i<6 {
	fmt.Printf("i-->%d\n",i)
}
fmt.Printf(i)

省略表达式2时,相当于直接作用于表达式2=true的条件上,此时for循环的功能便和while(true){…}相同

i := 1
for {
	fmt.Printf("i-->%d\n",i)
	i++
}

for中的continue语句,跳过当前循环,直接执行下一次循环

	for i := 1; i <= 9; i++ {
		if i == 5 {
			continue
		}
		fmt.Printf("%d", i)
	}
//输出结果为12346789(跳过5)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值