Go中的循环


Go只for循环。基本for循环有三个组件分隔;

  • init 语句:在第一次迭代之前执行

  • 条件 表达式:在每次迭代之前计算

  • post 语句:在每次迭代结束时执行

init 语句通常是一个简短的变量声明。在那里声明的变量只在for语句的范围内可见。一旦布尔条件求值为false,循环就会停止迭代。

for循环的一个例子如下 -

for.go

package main

 import "fmt"

 func main() {
    sum := 0
    for i := 0; i <= 10; i++ {
        sum += i
    }
    fmt.Println("The sum of first 10 natural numbers is", sum)
 }

运行上述程序会产生类似于以下输出的输出

$ go run for.go
The sum of first 10 natural numbers is 55

使用continue和break

// this code prints any odd numbers up to 5
  for n := 0; n <= 10; n++ {
    if n % 2 == 0 {
      // if the number is even jump to the next n
      continue
    }
    fmt.Println(n)
    // if the number is 5 exit the loop
    if n == 5 {
      break
    }
  }

If you want to create an infinite loop just use for { }

for {
    // Whill loop until a condition breaks the loop
    break // exit the loop
  }

替换 for while-loop

func main() {
    num := 1
    for num <= 1000 {
        num *= 2
    }
    fmt.Println("The smallest power of 2 above 1000 is", num)
}

更多go教程

学习更多go教程