广告
返回顶部
首页 > 资讯 > 后端开发 > GO >golang流程控制语句有哪些
  • 887
分享到

golang流程控制语句有哪些

流程控制go语言Golang 2023-05-14 19:05:56 887人浏览 八月长安
摘要

流程控制语句:1、if语句,由一个布尔表达式后紧跟一个或多个语句组成;2、“if…else”语句,else中的表达式在布尔表达式为false时执行;3、switch语句,用于基于不同条件执行不同动作;4、select语句;5、for循环语句

流程控制语句:1、if语句,由一个布尔表达式后紧跟一个或多个语句组成;2、“if…else”语句,else中的表达式在布尔表达式为false时执行;3、switch语句,用于基于不同条件执行不同动作;4、select语句;5、for循环语句,语法“for k,v := range oldmap{newmap[k]=v}”;6、循环控制语句break、continue、Goto。

golang流程控制语句有哪些

教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。

下面我们了解一下关于golang流程控制语句的基本内容。

1、条件分支语句

C语言类似,相关的条件语句如下表所示:

语句描述
if 语句if 语句 由一个布尔表达式后紧跟一个或多个语句组成。
if…else 语句if 语句 后可以使用可选的 else 语句, else 语句中的表达式在布尔表达式为 false 时执行。
switch 语句switch 语句用于基于不同条件执行不同动作。
select 语句select 语句类似于 switch 语句,但是select会随机执行一个可运行的case。如果没有case可运行,它将阻塞,直到有case可运行。
  • if语句
    语法如下:
if 布尔表达式 {
   
}
  • if-else语句
if 布尔表达式 {
   
} else {
	
}
  • switch语句
    其中的变量v可以是任何类型,val1val2可以是同类型的任意值,类型不局限为常量或者整数,或者最终结果为相同类型的表达式。
switch v {
    case val1:
        ...
    case val2:
        ...
    default:
        ...
}
  • select语句
    select 是 Go 中的一个控制结构,类似于用于通信的 switch 语句。每个 case 必须是一个通信操作,要么是发送要么是接收。它将会随机执行一个可运行的 case。如果没有 case 可运行,它将阻塞,直到有 case 可运行。一个默认的子句应该总是可运行的。
select {
    case communication clause  :
       statement(s);      
    case communication clause  :
       statement(s);
    
    default : 
       statement(s);
}

注意:

  • 每个case必须都是一个通信
  • 所有channel表达式都会被求值,所有被发送的表达式都会被求值
  • 如果任意某一个通信都可以,它就执行,其他就忽略
  • 如果有多个case都可以运行,select就会随机挑选一个来执行。
  • 如果没有一个case可以被运行:如果有default子句,就执行default子句,select将被阻塞,直到某个通信可以运行,从而避免饥饿问题。

2、循环语句

2.1 循环处理语句

与多数语言不同的是,Go语言中的循环语句只支持 for 关键字,而不支持 while 和 do-while 结构,关键字 for 的基本使用方法与C语言和 c++ 中非常接近。

go中时使用for实现循环的,共有三种形式:


语法
和c语言中的for相同for init; condition; post {}
和c语言中的while相同for condition{}
和c语言中的for(;;)相同for{}

除此以外,for循环还可以直接使用range对slice、map、数组以及字符串等进行迭代循环,格式如下:

for key, value := range oldmap {
	newmap[key] = value
}

2.2 循环控制语句

控制语句详解
break中断跳出循环或者switch语句
continue跳过当前循环的剩余语句,然后继续下一轮循环
goto语句将控制转移到被标记的语句

1、break

break主要用于循环语句跳出循环,和c语言中的使用方式是相同的。且在多重循环的时候还可以使用label标出想要break的循环。
实例代码如下:

a := 0
for a<5 {
	fmt.Printf("%d\n", a)
	a++
	if a==2 {
		break;
	}
}

2、continue

Go 语言的 continue 语句 有点像 break 语句。但是 continue 不是跳出循环,而是跳过当前循环执行下一次循环语句。在多重循环中,可以用标号 label 标出想 continue 的循环。
实例代码如下:

    // 不使用标记
    fmt.Println("---- continue ---- ")
    for i := 1; i <= 3; i++ {
        fmt.Printf("i: %d\n", i)
            for i2 := 11; i2 <= 13; i2++ {
                fmt.Printf("i2: %d\n", i2)
                continue
            }
    }



    // 使用标记
    fmt.Println("---- continue label ----")
    re:
        for i := 1; i <= 3; i++ {
            fmt.Printf("i: %d", i)
                for i2 := 11; i2 <= 13; i2++ {
                    fmt.Printf("i2: %d\n", i2)
                    continue re
                }
        }

3、goto

goto语句主要是无条件转移到过程中指定的行。goto语句通常和条件语句配合使用,可用来实现条件转移、构成循环以及跳出循环体等功能。但是并不主张使用goto语句,以免造成程序流程混乱。
示例代码如下:

var a int = 0
LOOP: for a<5 {
	if a == 2 {
		a = a+1
		goto LOOP
	}
	fmt.Printf("%d\n", a)
	a++
}

以上代码中的LOOP就是一个标签,当运行到goto语句的时候,此时执行流就会跳转到LOOP标志的哪一行上。

【相关推荐:Go视频教程、编程教学】

以上就是golang流程控制语句有哪些的详细内容,更多请关注编程网其它相关文章!

您可能感兴趣的文档:

--结束END--

本文标题: golang流程控制语句有哪些

本文链接: https://www.lsjlt.com/news/203482.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • golang流程控制语句有哪些
    流程控制语句:1、if语句,由一个布尔表达式后紧跟一个或多个语句组成;2、“if…else”语句,else中的表达式在布尔表达式为false时执行;3、switch语句,用于基于不同条件执行不同动作;4、select语句;5、for循环语句...
    99+
    2023-05-14
    流程控制 go语言 Golang
  • golang流程控制语句有哪些?
    常见的流程控制语句有if语句、for循环、switch语句、select语句、break和continue语句、goto语句。详细介绍:1、if语句: 用于条件性地执行一段代码块;2、for循环: 用于重复执行一段代码块;3、switch语...
    99+
    2023-12-21
    go语言 Golang 流程控制语句
  • php有哪些流程控制语句
    php有哪些流程控制语句?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。php有什么特点1、执行速度快。2、具有很好的开放性和可扩展性。3、PHP支持多种主流与非主流的数据库。4...
    99+
    2023-06-14
  • mysql中有哪些流程控制语句
    mysql中的流程控制语句有:1.IF语句,根据不同条件执行不同操作;2.CASE语句,多分支语句结构;3.WHILE循环语句,先判断后执行;4.LOOP循环语句,没有内置的循环条件;5.REPEAT循环语句,先执行后判断;mysql中的流...
    99+
    2022-10-03
  • python的流程控制语句有哪些
    python的流程控制语句有:1、if语句,根据条件执行不同的代码块;2、for循环,用于遍历一个序列或其他可迭代对象;3、while循环,当给定条件为真时,重复执行一段代码;4、break语句,用于终止当前循环,跳出整个循环;5、cont...
    99+
    2023-12-11
    python
  • java中有哪些流程控制语句
    java中有哪些流程控制语句?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。程序的结构分类:顺序结构:按照写代码的顺序 一次执行 选择结构:根据条件的不同有选择的执行不同的代码循...
    99+
    2023-05-31
    java 中有 ava
  • Java的流程控制语句有哪些
    本篇内容介绍了“Java的流程控制语句有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!01、if-else 相关1)if 语句if 语句...
    99+
    2023-06-16
  • linux shell流程控制语句有哪些
    本篇内容主要讲解“linux shell流程控制语句有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux shell流程控制语句有哪些”吧!一、shell条件语句(if用法)if语句结...
    99+
    2023-06-09
  • JAVA中的流程控制语句有哪些
    这期内容当中小编将会给大家带来有关JAVA中的流程控制语句有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。第一节 JAVA条件语句之if语句单独的if语句,语法:if(条件){条件成立时执行的代码};...
    99+
    2023-05-31
    java 流程控制语句 ava
  • JavaScript中有哪些循环语句和流程控制语句
    这篇文章将为大家详细讲解有关JavaScript中有哪些循环语句和流程控制语句,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。循环语句众所周知,常用的循环语句...
    99+
    2022-10-19
  • JAVA中的流控制语句有哪些
    本篇内容主要讲解“JAVA中的流控制语句有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JAVA中的流控制语句有哪些”吧!与 C、 C++相 同 ,Java程 序 通 过 流 控 制 来 执...
    99+
    2023-06-03
  • golang流程控制语句怎么使用
    本文小编为大家详细介绍“golang流程控制语句怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“golang流程控制语句怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。流程控制语句:1、if语句,由...
    99+
    2023-07-04
  • Python流程控制语句有哪些及如何用
    本篇内容介绍了“Python流程控制语句有哪些及如何用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、选择结构1.1、if 语句语法格式i...
    99+
    2023-07-04
  • 流程控制语句
    JavaScript 运算符与流程控制语句 运算符 1、赋值运算符:=、+=、-=、*=、/=、%= 2、算术运算符:+、-、*、/、%、++、-- 3、字符串运算符:+、+= 4、比较运算符:==、!=、= 5、逻辑运算符:&&、||、...
    99+
    2023-06-03
  • JSP控制流语句和运算符有哪些
    这篇文章主要为大家展示了“JSP控制流语句和运算符有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JSP控制流语句和运算符有哪些”这篇文章吧。控制流语句JSP提供对Java语言的全面支持。您...
    99+
    2023-06-02
  • Golang中常用的流程控制语句详解
    Golang中常用的流程控制语句详解Golang作为一门面向并发的静态编程语言,提供了丰富的流程控制语句来实现复杂的逻辑和条件判断。本文将详细介绍Golang中常用的流程控制语句,包括if语句、switch语句、for语句等,并且提供具体的...
    99+
    2023-12-23
    switch语句 for循环 if条件判断
  • Python3 流程控制语句
    Python3 流程控制语句 python3 的流程控制语句包括: if 条件语句 while循环语句 for 循环语句 range函数 break continue pass 一、if语句 if语句是python中最常用的条件控制语...
    99+
    2023-01-31
    语句 流程
  • Python流程控制语句
    注意: 在 Python 中,非零值表示 True;None 和 0 表示 False。if 语句if…else 语句if…elif…else 语句嵌套 if 语句可以将一个 if … elif … else 语句加入至另一个 if … e...
    99+
    2023-01-31
    语句 流程 Python
  • python流程控制语句有几种
    python流程控制语句有三种,分别是条件语句、循环语句和跳转语句。详细介绍:1、条件语句,条件语句用于根据条件的真假来执行不同的代码块,Python提供了if语句和if-else语句来实现条件控制;2、循环语句,用于重复执行一段代码块,直...
    99+
    2023-12-12
    python 流程控制
  • Go语言流程控制语句
    1.条件语句 几个注意点和C#不一样的。 if a < 5 { return 0 } else { return 1 } ① 条件语句不需要使用括号...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作