[关闭]
@adamhand 2019-01-30T20:21:16.000000Z 字数 850 阅读 728

golang--循环


基本语法

for 是 Go 语言唯一的循环语句。Go 语言中并没有其他语言比如 C 语言中的 while 和 do while 循环。

for语句有三种基本形式:第一种是常用情况;第二种是简化情况;第三种是无限循环

  1. for initialisation; condition; post {
  2. }
  1. for condition{
  2. }
  1. for {
  2. }

例子

让我们用 for 循环写一个打印出从 1 到 10 的程序。

  1. package main
  2. import (
  3. "fmt"
  4. )
  5. func main() {
  6. for i := 1; i <= 10; i++ {
  7. fmt.Printf(" %d",i)
  8. }
  9. }

上述程序可写为:

  1. package main
  2. import (
  3. "fmt"
  4. )
  5. func main() {
  6. i := 0
  7. for i <= 10 { //semicolons are ommitted and only condition is present
  8. fmt.Printf("%d ", i)
  9. i += 1
  10. }
  11. }

break

break 语句用于在完成正常执行之前突然终止 for 循环,之后程序将会在 for 循环下一行代码开始执行。

让我们写一个从 1 打印到 5 并且使用 break 跳出循环的程序。

  1. package main
  2. import (
  3. "fmt"
  4. )
  5. func main() {
  6. for i := 1; i <= 10; i++ {
  7. if i > 5 {
  8. break //loop is terminated if i > 5
  9. }
  10. fmt.Printf("%d ", i)
  11. }
  12. fmt.Printf("\nline after for loop")
  13. }

打印结果为:

  1. 1 2 3 4 5
  2. line after for loop

continue

continue 语句用来跳出 for 循环中当前循环。在 continue 语句后的所有的 for 循环语句都不会在本次循环中执行。循环体会在一下次循环中继续执行。

让我们写一个打印出 1 到 10 并且使用 continue 的程序。

  1. package main
  2. import (
  3. "fmt"
  4. )
  5. func main() {
  6. for i := 1; i <= 10; i++ {
  7. if i%2 == 0 {
  8. continue
  9. }
  10. fmt.Printf("%d ", i)
  11. }
  12. }

打印结果为:

  1. 1 3 5 7 9
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注