1、Go 语言循环语句
for循环是一个循环控制结构,可以执行指定次数的循环。
语法
Go语言的For循环有3中形式,只有其中的一种使用分号。
和 C 语言的 for 一样:
for init; condition; post { }
和 C 的 while 一样:
for condition { }
和 C 的 for(;;) 一样:
for { }
- init: 一般为赋值表达式,给控制变量赋初值;
- condition: 关系表达式或逻辑表达式,循环控制条件;
- post: 一般为赋值表达式,给控制变量增量或减量。
for语句执行过程如下:
- ①先对表达式1赋初值;
- ②判别赋值表达式 init 是否满足给定条件,若其值为真,满足循环条件,则执行循环体内语句,然后执行 post,进入第二次循环,再判别 condition;否则判断 condition 的值为假,不满足条件,就终止for循环,执行循环体外语句。
for 循环的 range 格式可以对 slice、map、数组、字符串等进行迭代循环。格式如下:
for key, value := range oldMap {
newMap[key] = value
}
for语句语法流程如下图所示:
package main
import "fmt"
func main() {
var b int = 15
var a int
numbers := [6]int{1, 2, 3, 5}
/* for 循环 */
for a := 0; a < 10; a++ {
fmt.Printf("a 的值为: %d\n", a)
}
for a < b {
a++
fmt.Printf("a 的值为: %d\n", a)
}
for i,x:= range numbers {
fmt.Printf("第 %d 位 x 的值 = %d\n", i,x)
}
}
2、Go语言实现其他语言中的While
方法1:golang 里面没有while关键字,可以用for+break实现
i:=0
for {
if i <= 10 {
break;
}
do something
}
与java里面等价的while:
int i = 0;
while(i<10){// notice there is only <
do something
}
方法2:通过for循环
go实现代码及运行结果:
package main
import "fmt"
func main() {
i:=0
for i<10{
fmt.Print(i,"\t")
i++
}
}
Java实现代码及运行结果:
public static void main(String[] args) {
int i=0;
while (i<10){
System.out.print(i+"\t");
i++;
}
}