go流程控制代码详解

作者:j_x_x 时间:2023-10-15 18:14:19 

if

•Go里面if条件判断语句中不需要括号,条件判断语句里面允许声明一个变量,任何在这里声明的变量都可以在所有的条件分支中使用。


if x := 11; x > 10 {
fmt.Println("x is greater than 10")
} else {
fmt.Println("x is less than 10")
}

goto

•用goto跳转到必须在当前函数内定义的标签,标签名是大小写敏感的。


func myFunc() {
i := 0
Here:  //这行的第一个词,以冒号结束作为标签
println(i)
i++
goto Here  //跳转到Here去
}

for

•for是go中的唯一的循环结构,在go里面有以下几种使用形式


//经典的初始化/条件/后续形式的for循环
for expression1; expression2; expression3 {}
//带单个循环条件,即忽略expression1和expression3:
sum := 1
for ; sum < 1000; {
sum += sum
}
//其中;也可以省略,那么就变成如下的代码了,这就是while的功能。
for sum < 1000 {}
//不带条件的for循环将一直执行,直到在循环体内使用了break或者return来跳出循环  
for {
fmt.Println("loop")
break
}

break和continue

•当嵌套过深的时候,break可以配合标签使用,即跳转至标签所指定的位置,break和continue还可以跟着标号,用来跳到多重循环中的外层循环

for配合range可以用于读取slice,map和数组的数据

•range 在数组和 slice 中都同样提供每个项的索引和值。我们不需要索引的时候使用空值定义符_ 来忽略它,因为对于“声明而未被调用”的变量, 编译器会报错。有时候我们需要这个索引。

•range在map中迭代键值对

switch


//经典的初始化/条件/后续形式的for循环
for expression1; expression2; expression3 {}
//带单个循环条件,即忽略expression1和expression3:
sum := 1
for ; sum < 1000; {
sum += sum
}
//其中;也可以省略,那么就变成如下的代码了,这就是while的功能。
for sum < 1000 {}
//不带条件的for循环将一直执行,直到在循环体内使用了break或者return来跳出循环  
for {
fmt.Println("loop")
break
}

总结

以上所述是小编给大家介绍的go流程控制代码详解,希望对大家有所帮助

来源:https://www.cnblogs.com/jiangxiangxiang/archive/2019/05/24/10917676.html

标签:go,流程,控制
0
投稿

猜你喜欢

  • Python 一键获取百度网盘提取码的方法

    2023-11-30 06:13:49
  • Python素数检测的方法

    2021-02-13 13:07:30
  • Mysql5.7如何修改root密码

    2024-01-26 21:22:28
  • python matplotlib绘画十一种常见数据分析图

    2022-09-02 04:50:41
  • MySQL 移动数据目录后启动失败问题解决

    2024-01-23 02:45:42
  • pyecharts调整图例与各板块的位置间距实例

    2023-05-15 20:05:40
  • Vue组件全局注册实现警告框的实例详解

    2024-05-02 16:53:05
  • 设计和企业文化

    2009-03-28 10:35:00
  • 详解Python下载图片并保存本地的两种方式

    2023-04-03 05:21:36
  • python图像常规操作

    2022-12-28 18:21:52
  • 一文详解如何用GPU来运行Python代码

    2022-02-26 17:49:30
  • 简单了解python单例模式的几种写法

    2022-01-16 20:05:51
  • 教你用python从日期中获取年、月、日和星期等30种信息

    2023-05-06 22:32:38
  • 对django views中 request, response的常用操作详解

    2021-02-21 15:00:51
  • CSS背景属性5个应用实例

    2009-09-13 20:54:00
  • Layui表格监听行单双击事件讲解

    2024-04-19 10:45:00
  • Python使用Keras OCR实现从图像中删除文本

    2022-07-22 20:50:24
  • 解决Mysql报Invalid default value for ''operate_time''错误的问题

    2024-01-14 08:42:16
  • Python使用三种方法实现PCA算法

    2022-06-26 13:32:49
  • zabbix 监控mysql的方法

    2024-01-16 02:11:04
  • asp之家 网络编程 m.aspxhome.com