Go 語言教程
for 循環(huán)是一個(gè)循環(huán)控制結(jié)構(gòu),可以執(zhí)行指定次數(shù)的循環(huán)。
Go 語言的 For 循環(huán)有 3 種形式,只有其中的一種使用分號(hào)。
和 C 語言的 for 一樣:
for init; condition; post { }
和 C 的 while 一樣:
for condition { }
和 C 的 for(;;) 一樣:
for { }
for語句執(zhí)行過程如下:
1、先對(duì)表達(dá)式 1 賦初值;
2、判別賦值表達(dá)式 init 是否滿足給定條件,若其值為真,滿足循環(huán)條件,則執(zhí)行循環(huán)體內(nèi)語句,然后執(zhí)行 post,進(jìn)入第二次循環(huán),再判別 condition;否則判斷 condition 的值為假,不滿足條件,就終止for循環(huán),執(zhí)行循環(huán)體外語句。
for 循環(huán)的 range 格式可以對(duì) slice、map、數(shù)組、字符串等進(jìn)行迭代循環(huán)。格式如下:
for key, value := range oldMap { newMap[key] = value }
for語句語法流程如下圖所示:
計(jì)算 1 到 10 的數(shù)字之和:
輸出結(jié)果為:
55
init 和 post 參數(shù)是可選的,我們可以直接省略它,類似 While 語句。
以下實(shí)例在 sum 小于 10 的時(shí)候計(jì)算 sum 自相加后的值:
輸出結(jié)果為:
16 16
無限循環(huán):
要停止無限循環(huán),可以在命令窗口按下ctrl-c 。
For-each range 循環(huán)
這種格式的循環(huán)可以對(duì)字符串、數(shù)組、切片等進(jìn)行迭代輸出元素。
以上實(shí)例運(yùn)行輸出結(jié)果為:
0 google 1 json 第 0 位 x 的值 = 1 第 1 位 x 的值 = 2 第 2 位 x 的值 = 3 第 3 位 x 的值 = 5 第 4 位 x 的值 = 0 第 5 位 x 的值 = 0其他擴(kuò)展