
for語句用於根據給定的條件重複執行一個代碼塊。這個條件或由for子句直接給出,
或從range子句中獲得。
1.for子句
一條for語句可以攜帶一條for子句。for子句可以包含初始化子句、條件子句和後
置子句。下面我們來看一組示例:
var number int
for i:=0;i<100;i++{
number++
var juint-1
for;j%5l=0;j*=3{//省略初始化子句
number++
fork:=1;k%5l=0;{//省略後置子句
k*=3
number++
在for子句的初始化子句和後置子句同時被省略,或者其中的所有部分都省略的情
況下,分隔符“;”可以省略。比如:
varm=1
for m<50{//省略初始化子句和後置子句
m*=3

2.range子句
一條for語句可以攜帶一條range子句,這樣就可以迭代出一個數組或切片值中的每
個元素、一個字符串值中的每個字符,或者一個字典值中的每個鍵-元素對,以及持續地
接收一個通道類型值中的元素。隨著迭代的進行,每一次獲取的迭代值(索引、元素、
字符或鍵-元素對)都會賦給相應的迭代變量。例如:
ints:=[]int{1,2,3,4,5}
for i,d:=range ints{
fmt.Printf(“Index:%d,Value:%d\n",i,d)
在range關鍵字右邊的是range表達式。range表達式一般只會在迭代開始前被求值
一次。
閱讀更多 編程語言探索 的文章