Day7-Go回圈

前言

回圈基本上是每个程序语言必备的函式,藉以回圈来达成反覆或是循环的动作。而 Go 语言的回圈种类比起其他程序语言来说,比较单一,只用 fo r回圈来表达三种不同的回圈,而我们就来介绍几种 for 回圈的使用方式。

使用计数器

此种 for 回圈,使用方法与其他程序语言的 for 回圈的观念较为相近,在一开始会宣告一个计数的变数,通常初始值为0(也可因应需求做调整),然後给定计数器最大值,作为回圈终止的条件,我们来看一下以下程序码:

package main
 
import "fmt"
 
func main(){
   for i :=0 ; i <= 10; i++{
       fmt.Println(i)
   }
}

在这段程序码,i 为我们的计数器,初始值为0,而最大值为10,其中 i++ 表示对 i 做迭代的动作,在每个回圈结束後对 i 做加1的动作,直到 i 到最大值,最後回圈里头的为印出每个回圈中,计数器 i 的值,其结果为:

0
1
2
3
4
5
6
7
8
9
10

而对计数器做迭代的动作,也可写在回圈里头,也回得到相同的结果,例如:

for i :=0 ; i <= 10;{
       fmt.Println(i)
       i++
   }

使用条件句

此种for回圈,是以条件来决定回圈是否继续执行,其逻辑并不难,我们直接看以下程序码:

package main
 
import "fmt"
 
func main(){
   i := 10
   for i >= 0{
       fmt.Println(i)
       i--
   }
}

其结果为:

10
9
8
7
6
5
4
3
2
1
0

以break搭配回圈

在回圈中,常常会搭配 break 做使用,可依条件需求让回圈提早跳出结束,看一下以下程序码:

package main
 
import "fmt"
 
func main() {
   sum := 0
 
   for i := 1; i <= 100; i++ {
       sum += i
       if sum >200 {
           fmt.Println(i)
           break
       }
   }
}

虽然计数器的条件为小於等於100,但依我们回圈里的条件,sum 的值在大於200时,会自动 break,其结果输出为20。

以continue搭配回圈

上面都提到了 break,那有写过程序的大家一定也会想到 continue,其使用方法,为若符合条件,便会跳过到此回圈,直接进入下个迭代,

package main
 
import "fmt"
 
func main() {
   for i := 1; i <= 10; i++ {
       if i%2 == 0 {
           continue
       }
 
       fmt.Println(i)
   }
}

这个范例是为了印出小於10正积数,当计数器为偶数时,判断後会直接跳到下一个回圈,不会执行印出的动作。

结语

以上是介绍 Go 语言中基本的 for 回圈使用方法,当然还有更进阶的用法,这里就不再更深入带入,若後续单元有用到,会在更深入讲解,感谢今天的阅读。

参考来源

https://opensourcedoc.com/golang-programming/iteration/


<<:  Day 03 : Python 基础观念 (2)

>>:  [区块链&DAPP介绍 Day7] Solidity 教学 - Mapping Types

企划实现(14)

GOOGLE登入 第八步:宣告 GoogleSignInClient mgoogleSignInCl...

Day24 <AuthorizeRouteView>运用

前天有在Blog.razor加入通过验证及未通过的显示内容,但如果系统要呈现的未通过验证内容都一样,...

DAY12 - 档案类的物件关系厘清(1) - File, FileList, Blob

前端网页若要取得一个档案,大家可能第一个画面就是下面这个UI吧!是利用<input type=...

[Day16] swift & kotlin 实作篇!(7) Click Event 绑定

swift 画面都有了! 接下来我们来完成一个小功能吧 首先 我们点选Main.storyboard...

Day 17 正面的鼓励与掌声...

一步主动,步步主动,步步领先,享受光荣;一步被动,步步被动,步步落伍,煎熬受穷。 《iT邦帮忙铁人赛...