一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

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

服務器之家 - 腳本之家 - Golang - 深入解析Go語言中for循環的寫法

深入解析Go語言中for循環的寫法

2020-04-28 10:33腳本之家 Golang

這篇文章主要介紹了Go語言中for循環的寫法,是Golang入門學習中的基礎知識,需要的朋友可以參考下

for循環是一個循環控制結構,可以有效地編寫需要執行的特定次數的循環。

語法
for循環在Go編程語言中的語法是:

 

復制代碼 代碼如下:

 

for [condition |  ( init; condition; increment ) | Range]
{
   statement(s);
}

 


下面是控制在一個流程的for循環:

 

如果condition是可用的,那么對于循環只要條件為真時執行。

如果for子句是( init; condition; increment ) 存在則

初始化(init)步驟首先被執行,并且只有一次。這一步可以聲明和初始化任何循環控制變量。不需要把一個聲明在這里,只要有一個分號出現。

接著,條件(condition)進行了評估計算。如果為true,則執行循環體。如果是假的,循環體不執行,只是之后的for循環流量控制跳轉到下一條語句。

for循環執行主體之后,控制流跳轉回到增量(increment)語句。此語句可以讓你更新任何循環控制變量。這個語句可以留空,只要一個分號出現條件后。

condition現在重新評估計算。如果為true,循環執行的過程中重復(循環體,然后增加步,然后再次條件)。之后如果條件為假,則循環終止。

 

如果range可用,然后循環執行的范圍內的每個項目。

流程圖:

深入解析Go語言中for循環的寫法

例子:

 

復制代碼 代碼如下:


package main

 

import "fmt"

func main() {
  
   var b int = 15
   var a int

   numbers := [6]int{1, 2, 3, 5}

   /* for loop execution */
   for a := 0; a < 10; a++ {
      fmt.Printf("value of a: %d\n", a)
   }

   for a < b {
      a++
      fmt.Printf("value of a: %d\n", a)
      }

   for i,x:= range numbers {
      fmt.Printf("value of x = %d at %d\n", x,i)
   }  
}

 


讓我們編譯和運行上面的程序,這將產生以下結果:

 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
value of a: 0
value of a: 1
value of a: 2
value of a: 3
value of a: 4
value of a: 5
value of a: 6
value of a: 7
value of a: 8
value of a: 9
value of a: 1
value of a: 2
value of a: 3
value of a: 4
value of a: 5
value of a: 6
value of a: 7
value of a: 8
value of a: 9
value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 15
value of x = 1 at 0
value of x = 2 at 1
value of x = 3 at 2
value of x = 5 at 3
value of x = 0 at 4
value of x = 0 at 5

Go語言嵌套for循環
Go編程語言允許使用一個循環內嵌套另一個循環。下面的內容展示幾個例子來說明這個概念。

語法
在Go語言中嵌套for循環語句的語法如下:

 

復制代碼 代碼如下:

 

for [condition |  ( init; condition; increment ) | Range]
{
   for [condition |  ( init; condition; increment ) | Range]
   {
      statement(s);
   }
   statement(s);
}

 


例子:
下面的程序使用嵌套for循環從2至100找出的素數:

 

 

復制代碼 代碼如下:

 

package main

import "fmt"

func main() {
   /* local variable definition */
   var i, j int

   for i=2; i < 100; i++ {
      for j=2; j <= (i/j); j++ {
         if(i%j==0) {
            break; // if factor found, not prime
         }
      }
      if(j > (i/j)) {
         fmt.Printf("%d is prime\n", i);
      }
   } 
}

 


當上述代碼被編譯和執行時,它產生了以下結果:

 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2 is prime
3 is prime
5 is prime
7 is prime
11 is prime
13 is prime
17 is prime
19 is prime
23 is prime
29 is prime
31 is prime
37 is prime
41 is prime
43 is prime
47 is prime
53 is prime
59 is prime
61 is prime
67 is prime
71 is prime
73 is prime
79 is prime
83 is prime
89 is prime
97 is prime

 

延伸 · 閱讀

精彩推薦
  • Golanggo日志系統logrus顯示文件和行號的操作

    go日志系統logrus顯示文件和行號的操作

    這篇文章主要介紹了go日志系統logrus顯示文件和行號的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧...

    SmallQinYan12302021-02-02
  • GolangGolang通脈之數據類型詳情

    Golang通脈之數據類型詳情

    這篇文章主要介紹了Golang通脈之數據類型,在編程語言中標識符就是定義的具有某種意義的詞,比如變量名、常量名、函數名等等,Go語言中標識符允許由...

    4272021-11-24
  • GolangGolang中Bit數組的實現方式

    Golang中Bit數組的實現方式

    這篇文章主要介紹了Golang中Bit數組的實現方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧...

    天易獨尊11682021-06-09
  • Golanggolang如何使用struct的tag屬性的詳細介紹

    golang如何使用struct的tag屬性的詳細介紹

    這篇文章主要介紹了golang如何使用struct的tag屬性的詳細介紹,從例子說起,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看...

    Go語言中文網11352020-05-21
  • Golanggolang json.Marshal 特殊html字符被轉義的解決方法

    golang json.Marshal 特殊html字符被轉義的解決方法

    今天小編就為大家分享一篇golang json.Marshal 特殊html字符被轉義的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧 ...

    李浩的life12792020-05-27
  • Golanggolang的httpserver優雅重啟方法詳解

    golang的httpserver優雅重啟方法詳解

    這篇文章主要給大家介紹了關于golang的httpserver優雅重啟的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,...

    helight2992020-05-14
  • Golanggolang 通過ssh代理連接mysql的操作

    golang 通過ssh代理連接mysql的操作

    這篇文章主要介紹了golang 通過ssh代理連接mysql的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧...

    a165861639710342021-03-08
  • Golanggo語言制作端口掃描器

    go語言制作端口掃描器

    本文給大家分享的是使用go語言編寫的TCP端口掃描器,可以選擇IP范圍,掃描的端口,以及多線程,有需要的小伙伴可以參考下。 ...

    腳本之家3642020-04-25
主站蜘蛛池模板: gay小太正初精 | 九九在线精品亚洲国产 | 青草草视频在线观看 | 亚洲可乐操 | 校花的第一次好紧好爽 | chinese456老年gay| 久久精品国产色蜜蜜麻豆国语版 | 97就去干 | 亚洲国产精品婷婷久久久久 | a男人天堂| 欧美日韩国产精品自在自线 | 亚洲AV 中文字幕 国产 欧美 | bt天堂午夜国产精品 | 久久丫线这里只精品 | 亚洲国产成人久久精品影视 | 国产微拍精品一区 | 色国产精品 | vod国产成人精品视频 | 校园情射| 1024在线视频精品免费 | 三级理论在线观看 | 婷婷久久热99在线精品 | 国产精品免费看久久久香蕉 | 国产成人精品午夜视频' | caoporn超碰最新地址进入 | 无颜之月全集免费观看 | 91九色国产porny| 好吊色视频988gao在线观看 | 久久久91精品国产一区二区 | blacked在线播放 | 98pao强力打造高清免费 | 92精品国产成人观看免费 | 国产精品最新 | 精品久久日日躁夜夜躁AV | 欧美整片在线 | 好奇害死猫在线观看 | china外卖员gay帮口 | 无码人妻视频又大又粗欧美 | 无人知晓小说姜璟免费阅读 | 99视频有精品 | 岛国在线播放v片免费 |