Go By Example-循环语句

Go和其他大多数语言不太一样,没有While和Do-Whiile形式的循环,只有一个for,来实现循环。

基本结构

for循环的基本结构是这个样子

	for 变量;条件;增量{内容}

首先,区别于其他语言for循环的{}前面的部分,没有括号。

然后{}里必须写内容,不能为空。;之间的内容,可以随意省略

通常写法,一个完整的for循环

	for a:=0;a<5;a++{
fmt.Println(a)
}

第一部分是一个赋值的操作,第二部分是一个判断条件,第三部分是一个增量的设定。

Go的for循环比较灵活

我们也可以只写第一部分

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

如果只写第一部分,判断条件和增量设定就要在循环过程设置了,比如这里使用了if条件。

或者只写第二部分

	var j int =1
for ; j<5; {
fmt.Printf("j=%d\n",j)
j++ }

当然也可以只写第三部分

	var k int =1
for ; ;k++ {
if k>5{
break
}
fmt.Printf("k=%d\n",k) }

或者你干脆什么都不写

	for ;;{
fmt.Println("无限循环")
break
}
//全省略,一般简写为下面形式
for{
fmt.Println("无限循环")
break
}

因为Go中没有where语句,如果想实现一个无限循环,我们就可以使用这种情况

综合示例

package main

import "fmt"

func main() {
i:=1
for i<=3{
fmt.Println(i)
i++
}
for{
fmt.Println("无限循环")
break
} here:
for {
fmt.Println("想不到吧")
for j:=0;j<3 ;j++ {
break here
}
}
fmt.Println("通过break添加标签here,跳出双重循环")
}

观察发现你会看到break后面跟了一个here,而这个here在for循环之前出现过一次。

这里的here可以是任何的非Go语言关键字,起到一个类似goto的作用,但是它和goto还不一样。

关于for循环大概可以总结为下面三点

1.break的标签必须在最外层for循环的前面。

2.break的标签执行之后,会继续for循环后面的代码,不会再重新进入循环。

3.break加标签用法,在嵌套的循环中使用。

最新文章

  1. How the problem solved about &quot; Dealing with non-fast-forward errors&quot;
  2. 使用github和hexo搭建博客
  3. Server Develop (七) Linux 守护进程
  4. MyBatis架构设计及源代码分析系列(一):MyBatis架构
  5. Scout YYF I(POJ 3744)
  6. PHP 开发环境配置
  7. help python(查看模块帮助文档)
  8. cetos 6.3 安装 apache+mysql+php
  9. 开源的 Restful Api 集成测试工具 Hitchhiker
  10. 对 url 中含有的中文进行转码操作
  11. Java基础try-with-resource语法源码分析
  12. ansible批量管理
  13. element 多个文件上传多次http请求解决方法
  14. Android基础开发归档
  15. http://www.cnblogs.com/wuyunfei/p/4277226.html
  16. SD从零开始55-56, 风险管理, 付款卡
  17. SNMP学习笔记之SNMP介绍,OID及MIB库
  18. HTML表单组件
  19. 21. oracle游标循环例子
  20. springboot-登录拦截器

热门文章

  1. FreeRTOS 任务创建和删除(动态)
  2. aspx反射调用方法
  3. MongoDB的删除操作
  4. ORA-28547: connection to server failed, probable Oracle Net admin error
  5. RestFramework之权限组件
  6. git使用——忽略文件
  7. Python中的时间
  8. 运输层8——TCP运输连接管理
  9. Codeforces Round #519 D - Mysterious Crime
  10. java基础(1)----简介