go流程学习——关键字goto、range、for、if

目录

1.goto

2.for循环

3.range关键字

 4.if关键字


1.goto

        goto关键字是我觉得真正的具有跳转功能的关键字,也是go中的一个特色,通过goto关键字可以直接由goto当前所在位置跳转到end位置,在关键字goto xxx和xxx之间的程序不会被执行。

        需要注意的是如果xxx出现在goto之前则会导致死循环。

	//goto跳转,直接由goto当前所在处跳转到end处,开始执行end之后的代码
	fmt.Println("aaaaaaaaaaaa")
	goto End //end是用户自定义的标签

	fmt.Println("bbbbbbbbbbbbb")
End:
	fmt.Println("ccccccccccccc")

结果为:bbbbbbbbbbb不会被打印。

2.for循环

        go中的for循环与Java中的for循环语法格式相比少了圆括号,其他基本相同。例如:

sum := 0
	for i := 1; i < 11; i++ {
		sum = sum + i
		fmt.Println(sum)
	}

        这段代码会求1到10的累加和,for循环中初始化i=1,i:=1在这里为自动推导,i<11为循环条件,条件不满足就会跳出循环,i++为i自增。

3.range关键字

        range关键字通常与for关键字结合使用,range在每一次循环中会默认返回两个值,第一个是元素下标,第二个是元素值,所以使用时需要使用两个变量来接受,如果只需要两个值中的某一个值,则可以结合匿名变量使用。

        这里给出了使用range和不使用range的程序对比。

str := "tsh"
for i := 0; i < len(str); i++ {
	fmt.Println(str[i])
}
//range默认返回两个值,一个是元素下标,一个是元素值
for i, data := range str {
	fmt.Println(i, data)
}

 4.if关键字

        if关键字的语法格式与Java中的区别也是在于条件不需要圆括号括起。例如:

if score == 700 {
	fmt.Println("true")
} else if score == 699 {
	fmt.Println(score)
}

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值