golang for 语句的特点 和 range子句 的关系

golang for 语句的特点 和 range子句 的关系

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

golang for 语句的特点 和 range子句 的关系

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表达式一般只会在迭代开始前被求值

一次。

golang for 语句的特点 和 range子句 的关系


分享到:


相關文章: