go语言中for的写法有哪些
时间:2023-01-18 14:50
Go 语言的For循环有3种写法:1、和C语言for一样的写法,语法“for init; condition; post {...}”;2、和C语言while一样的写法,语法“for condition {...}”;3、和C语言for(;;)一样的写法,语法“for {...}”。需要注意,左花括号“{”必须与for关键字处于同一行。 本教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。 与多数语言不同的是,Go语言中的循环语句只支持 for 关键字,而不支持 while 和 do-while 结构。 for 循环是一个循环控制结构,可以执行指定次数的循环。 Go 语言 for 循环的写法 Go 语言的 For 循环有 3 种形式,只有其中的一种使用分号。 和 C 语言的 for 一样: 和 C 的 while 一样: 和 C 的 for(;;) 一样: init: 一般为赋值表达式,给控制变量赋初值; condition: 关系表达式或逻辑表达式,循环控制条件; post: 一般为赋值表达式,给控制变量增量或减量。 for语句执行过程如下: 1、先对表达式 1 赋初值; 2、判别赋值表达式 init 是否满足给定条件,若其值为真,满足循环条件,则执行循环体内语句,然后执行 post,进入第二次循环,再判别 condition;否则判断 condition 的值为假,不满足条件,就终止for循环,执行循环体外语句。 使用循环语句时,需要注意的有以下几点: 左花括号 Go语言中的 for 循环与C语言一样,都允许在循环条件中定义和初始化变量,唯一的区别是,Go语言不支持以逗号为间隔的多个赋值语句,必须使用平行赋值的方式来初始化多个变量。 Go语言的 for 循环同样支持 continue 和 break 来控制循环,但是它提供了一个更高级的 break,可以选择中断哪一个循环,如下例: 上述代码中,break 语句终止的是 JLoop 标签处的外层循环。 Go 语言 for 循环的使用 for 循环的 range 格式可以对 slice、map、数组、字符串等进行迭代循环。格式如下: 以上代码中的 key 和 value 是可以省略。 如果只想读取 key,格式如下: 或者这样: 如果只想读取 value,格式如下: 实例 计算 1 到 10 的数字之和: 输出结果为: init 和 post 参数是可选的,我们可以直接省略它,类似 While 语句。 以下实例在 sum 小于 10 的时候计算 sum 自相加后的值: 输出结果为: 【相关推荐:Go视频教程、编程教学】 以上就是go语言中for的写法有哪些的详细内容,更多请关注gxlsystem.com其它相关文章!for init; condition; post { }
for condition { }
for { }
{
必须与 for 处于同一行。for j := 0; j < 5; j++ {
for i := 0; i < 10; i++ {
if i > 5 {
break JLoop
}
fmt.Println(i)
}
}
JLoop:
// ...
for key, value := range oldMap {
newMap[key] = value
}
for key := range oldMap
for key, _ := range oldMap
for _, value := range oldMap
package main
import "fmt"
func main() {
sum := 0
for i := 0; i <= 10; i++ {
sum += i
}
fmt.Println(sum)
}
55
package main
import "fmt"
func main() {
sum := 1
for ; sum <= 10; {
sum += sum
}
fmt.Println(sum)
// 这样写也可以,更像 While 语句形式
for sum <= 10{
sum += sum
}
fmt.Println(sum)
}
16
16