Fork me on GitHub

Go语言之基本循环控制

一、基本语法

1、格式

for 循环变量初始化;循环条件;变量迭代 {
   // 循环体操作
  循环操作语句
}

2、说明

for循环有四个要素:循环变量初始化、循环条件、循环体、变量迭代。

二、循环流程

 

三、for循环的四种写法

1、第一种

就是基本语法中的格式写法:

package main

import "fmt"

func main() {

    // 写法一
    for i := 0; i < 10; i++ {

        fmt.Println("i=",i)
    }

}

 

2、第二种

package main

import "fmt"

func main() {

    i := 0
    for i < 10 {
        fmt.Println("i=",i)
        i++
    }

}

3、第三种

package main

import "fmt"

func main() {

    // 写法三
    i := 0
    for {
        if i < 10 {
            fmt.Println("i=", i)
        } else {
            break
        }
        i++
    }

}

上述的写法等同于for ; ; {} 无限循环的写法,配合break来进行使用。

 4、for-range

for-range可以方便的遍历字符串和数组。传统方式是使用下标进行取值。

package main

import "fmt"

func main() {

    var str string = "hello"

    for i := 0; i < len(str); i++ {

        fmt.Printf("%c \n", str[i])

    }

}

而for-range的方式如下:

package main

import "fmt"

func main() {

    var str string = "hello"

    //for-range方式

    for index, value := range str {
        fmt.Printf("index=%d value=%c \n", index, value)
    }

}

四、实例

实现1-100数字的求和。

package main

import "fmt"


func main() {

    sum := 0
    for i := 1; i <= 100; i++ {
        sum += i
    }
    fmt.Println(sum)

}

五、while与do...while的实现

Go语言中没有while和do...while语法,但是可以使用for循环语句达到这种效果。

(一)while循环实现

1、语法

循环变量初始化
for {
   if 循环条件表达式 {
          break
      }
     循环体
    循环变量迭代
}

2、实例

package main

import "fmt"


func main() {
   i := 0

   for {
      if i > 10 {
          break
      }
      fmt.Println("i=",i)
      i++
      
   }

}

(二)do...while循环实现

1、语法

循环变量初始化
for {
     循环体
    循环变量迭代
   if 循环条件表达式 {
          break
      }

}

2、实例

package main

import "fmt"


func main() {
   i := 0

   for {
        fmt.Println("i=",i)
        i++
        if i > 10 {
            break
        }
      
   }

}

do...while是先执行循环体再进行判断,因此至少执行一次。

 

posted @ 2021-11-09 21:56  iveBoy  阅读(118)  评论(0编辑  收藏  举报
TOP