文档章节

go语言循环

z
 zhm0612
发布于 2017/05/31 17:23
字数 441
阅读 5
收藏 0
    今天学习了go的循环语句,就在这里回忆下。
     go语言的循环只有一种关键字,那就是for,虽然只有一种关键字,但是确支持3种形式
     1.无限循环
        for{
            fmt.Println("11")
        }
      2.有条件的
        for a>3{
            fmt.Println("22")
        }
      3.初始化并且有条件的
        for i:=0;i<3;i++{
            fmt.Println(i)
        }

    总结:
    1.左大括号必须跟for在同一行
     还有就是,如果你的循环条件是函数,那么不建议使用,因为条件在每次循环前都会被检查
    var  s = "abcds"
    for a:=1;a<len(s);a++{
            fmt.Println(a)
    }
    
    如果说循环,那么我们就不得不提结束循环语句
    结束循环语句的关键字有3个,分别为:goto、break、continue
    1.三者都可以配合标签使用
    2.标签区分大小写,如果标签定义了,但是不使用,编译会报错
    3.break、continue配合标签可以跳出多层循环
    4.goto是调整执行位置
    比如:
    **goto**
    
    	for a := 1; a < 3; a++ {
	for {
		fmt.Println(a)
		goto wode
	}
}
fmt.Println("wo")

wode: fmt.Println("结束")

结果:1 结束 goto为跳出循环,到标签的位置往下执行 注意:如果这时候将wode标签放置于循环前,那么将会进入到死循环 break wode: for a := 1; a < 3; a++ { for { fmt.Println(a) break wode } } fmt.Println("wo")

fmt.Println("结束")

结果:1
        wo
        结束

break为跳出最外层循环,继续往下执行其他语句(这里的其他语句指的是本循环外的语句)

continue

wode: for a := 1; a < 3; a++ { for { fmt.Println(a) continue wode } } fmt.Println("wo")

fmt.Println("结束")

结果:1 2 wo 结束 continue为结束离自己最近的循环

注意:break、continue的标签使用,必须放到自己的前面

© 著作权归作者所有

共有 人打赏支持
上一篇: go语言初学1
下一篇: go语言初学2
z
粉丝 0
博文 3
码字总数 1154
作品 0
私信 提问
哈,顺手喷下代码逻辑

正好还在出差,给客户做管理制度。当然实际做各种业务流程梳理。哈,引入点代码逻辑的话题。 先说引言,就一句话,开发语言,纯粹工具,不考虑底层模块、引擎的性能,界面的效果和平台兼容性...

中山野鬼
2014/03/14
346
9
[程序设计语言]-[核心概念]-03:控制流

0.概述 前面介绍了语言的演进以及一些基础概念后,从本篇开始进入了语言的核心问题中。这一篇讨论的是语言计算模型(大致可以用控制流来表述),大致如下7种: 顺序执行:最基本的流程控制,...

_blackheart
2014/08/27
0
0
深入浅出详解,C/C++基础知识循环语句

有的时候,我们可能需要多次执行同一块代码。一般情况下,语句是按顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。 编程语言提供了更为复杂执行路径的多种控制结构。 ...

诸葛玥
05/31
0
0
【python】While 和for循环

1、While循环语句 这是我学习python第三天,由于之前学习过c、java等计算机语言,虽然不算精通,但基本语法也还算熟悉,本来这次想直接跳过python基础知识直接到下一阶段,但想着不同语言还是...

某吕子
2017/12/03
0
0
Swift - 条件语句、循环语句

一、条件语句 条件语句通过设定的一个或多个条件来执行程序,在条件为真时执行指定的语句,在条件为 false 时执行另外指定的语句。 可以通过下图来简单了解条件语句的执行过程: Swift提供了以...

Albert_Lee
2017/11/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

结合Spring和Groovy解决脚本热加载

前言 去年写过一篇文件介绍了采用jpython解决动态配置热加载的问题jpython解决热加载,今年在实现规则引擎过程中准备进行升级,采用groovy脚本解决。 方案 将一些规则相关,如统计,排序,过...

春哥大魔王的博客
7分钟前
0
0
以太坊应用开发接口:JSON RPC API

以太坊应用开发接口指的是以太坊节点软件提供的API接口,去中心化应用可以利用这个接口访问以太坊上的智能合约。以太坊应用开发接口采用JSON-PRC标准,通常是通过HTTP或websocket提供给应用程...

汇智网教程
10分钟前
0
0
排序--二分插入排序

二分插入排序是对直接插入排序的一个优化,在排序--直接插入排序中已经分析过直接插入排序的最坏时间复杂度是平方级别的,二分插入排序则是通过二分查找对寻找插入位置进行了优化,在找到插入...

FAT_mt
21分钟前
1
0
Quora点赞过万!麻省理工5.0GPA十条学习技巧

美国版知乎Quora上有个问题是:顶尖学生如何学习。排名第一的答案已经赢得13.5K次点赞,我们翻译出来分享给大家。 MIT normally does not rank its students. So if you hear that someone g...

乔老哥
34分钟前
1
0
IOC的学习(1)

1.IOC理论概要 java中,一个对象A怎么才能调用对象B? 当一个对象的构建,需要多个其他对象时,对象和对象有复杂的构建关系。spring帮助我们维系对象的依赖关系,降低系统的实现成本,前提是...

杨健-YJ
46分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部