脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Golang - Go语言中循环Loop的用法介绍

Go语言中循环Loop的用法介绍

2022-07-16 19:48奋斗的大橙子 Golang

这篇文章介绍了Go语言中循环Loop的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

Go语言和其他语言不一样,它只有一种循环方式,就是for语句

可以参考如下公式:

?
1
2
3
for initialisation; condition; post{
    //Do Something
}

执行顺序

  • a.执行一次initialisation,初始化
  • b.判断condition
  • c.条件为true,执行{}内的语句
  • d.语句执行之后执行post

使用方式举例:

1.基本使用类似其他语言的for

?
1
2
3
4
5
6
func ForTest1(){
   for i:=1;i<=10;i++{
      fmt.Printf("i=%d\t",i)
   }
   fmt.Println()
}

2.替代while语句

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
func ForTest2(){
   i:=1
   for  ;i<=10; {
      i=i+2
      fmt.Printf("i=%d\t",i)
   }
   fmt.Println()
 
   //等价于
   for i<=10 {
      i=i+2
      fmt.Printf("i=%d\t",i)
      fmt.Println()
   }
}

3.多条件(多重赋值)

?
1
2
3
4
5
6
7
8
func ForTest3(){
   for x,y:=1,10; x<10 && y>1; x,y = x+1,y-1{
      fmt.Printf("x=%d\t",x)
      fmt.Printf("y=%d\t",y)
      fmt.Println()
   }
   fmt.Println()
}

4.无限循环

?
1
2
3
4
5
6
7
8
9
10
func ForTest4(){
   count:=1
   for {
      fmt.Printf("Hello\t")
      if(count == 3){
         break
      }
      count++
   }
}

运行结果如下:

-----ForTest1-------
i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10   
-----ForTest2-------
i=3 i=5 i=7 i=9 i=11   
-----ForTest3-------
x=1 y=10   
x=2 y=9
x=3 y=8
x=4 y=7
x=5 y=6
x=6 y=5
x=7 y=4
x=8 y=3
x=9 y=2
-----ForTest4-------
Hello   Hello   Hello

到此这篇关于Go语言Loop循环的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/dcz2015/p/10443055.html

延伸 · 阅读

精彩推荐
  • Golanggolang中json的omitempty使用操作

    golang中json的omitempty使用操作

    这篇文章主要介绍了golang中json的omitempty使用操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    wilsonyx13292021-03-23
  • GolangGolang加权轮询负载均衡的实现

    Golang加权轮询负载均衡的实现

    负载均衡器在向后端服务分发流量负载时可以使用几种策略。本文主要介绍了Golang加权轮询负载均衡,具有一定的参考价值,感兴趣的小伙伴们可以参考一...

    锐玩道9342021-08-10
  • Golang使用Golang实现加权负载均衡算法的实现代码

    使用Golang实现加权负载均衡算法的实现代码

    这篇文章主要介绍了使用Golang实现加权负载均衡算法的实现代码,详细说明权重转发算法的实现,通过实例代码给大家介绍的非常详细,对大家的学习或工作...

    Mr.YF6182021-09-19
  • Golanggo语言基础 seek光标位置os包的使用

    go语言基础 seek光标位置os包的使用

    这篇文章主要介绍了go语言基础 seek光标位置os包的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    超级系10312021-06-25
  • Golanggo中的unsafe包及使用详解

    go中的unsafe包及使用详解

    Unsafe code是一种绕过go类型安全和内存安全检查的Go代码。这篇文章主要介绍了go中的unsafe包,需要的朋友可以参考下 ...

    lucifer_L ·3602020-05-27
  • Golanggo语言处理TCP拆包/粘包的具体实现

    go语言处理TCP拆包/粘包的具体实现

    TCP的拆包/粘包也算是网络编程中一个比较基础的问题了,本文主要介绍了go语言处理TCP拆包/粘包,文中通过示例代码介绍的非常详细,具有一定的参考价值...

    熊纪元4492022-01-22
  • Golanggo语言的panic和recover函数用法实例

    go语言的panic和recover函数用法实例

    今天小编就为大家分享一篇关于go语言的panic和recover函数用法实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随...

    stpeace3692020-05-24
  • GolangGo语言程序查看和诊断工具详解

    Go语言程序查看和诊断工具详解

    这篇文章主要为大家详细介绍了Go语言程序查看和诊断工具,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 ...

    snowInPluto5452020-05-10