标签:go for 语法
在Go中其他循环遍历的控制语句,唯有for。而for同样也是比较灵活的:
package main
import "fmt"
func main() {
// 最基本的一种,单一条件循环
// 这个可以代替其他语言的while循环
i := 1
for i <= 3 {
fmt.Println(i)
i = i + 1
}
// 经典的循环条件初始化/条件判断/循环后条件变化
for j := 7; j <= 9; j++ {
fmt.Println(j)
}
// 无条件的for循环是死循环,除非你使用break跳出循环或者
// 使用return从函数返回
for {
fmt.Println("loop")
break
}
}
循环控制语句可以控制循环体内语句的执行过程包含:
break语句:经常用于中断当前for循环或者跳出switch语句
continue语句:跳过当前循环的剩余语句,然后继续进行下一轮循环
goto语句:将控制转移到被标记的语句
**********************************
如过循环中条件语句永远不为 false 则会进行无限循环,我们可以通过 for 循环语句中只设置一个条件表达式来执行无限循环:
package main
import "fmt"
func main(){
for { //这里可以写true或者省略
fmt.Printf("这是死循环哦.......\n")
}
}
for 循环中,执行 continue 语句会触发for增量语句的执行
package mainimport "fmt"func main() { /* 定义局部变量 */ var a int = 10 /* for 循环 */ for a < 20 { if a == 15 { /* 跳过此次循环 */ a = a + 1; continue; } fmt.Printf("a 的值为 : %d\n", a); a++; } }
Go 语言的 goto 语句可以无条件地转移到过程中指定的行。
goto语句通常与条件语句配合使用。可用来实现条件转移, 构成循环,跳出循环体等功能。
但是,在结构化程序设计中一般不主张使用goto语句, 以免造成程序流程的混乱,使理解和调试程序都产生困难。
package mainimport "fmt"func main() { /* 定义局部变量 */ var a int = 10 /* 循环 */ LOOP: for a < 20 { if a == 15 { /* 跳过迭代 */ a = a + 1 goto LOOP } fmt.Printf("a的值为 : %d\n", a) a++ } }
本文出自 “DBAspace” 博客,请务必保留此出处http://dbaspace.blog.51cto.com/6873717/1962681
标签:go for 语法
原文地址:http://dbaspace.blog.51cto.com/6873717/1962681