侧边栏壁纸
博主头像
秋码记录

一个游离于山间之上的Java爱好者 | A Java lover living in the mountains

  • 累计撰写 29 篇文章
  • 累计创建 40 个标签
  • 累计创建 185 个分类

Go 语言中的 for 循环结构(Let's Go 十六)

Go当中只有for循环结构,可没有像c/c++语言有whiledo ... while的。for循环结构与if分支结构一样,可以省略(),左大括号{必须与for在同一行。

Go当中只有for循环结构,可没有像c/c++语言有whiledo ... while的。for循环结构与if分支结构一样,可以省略(),左大括号{必须与for在同一行。

package main

import (
    "fmt"
)

func main() {

    num := 0

    for i := 0; i < 10; i++ {
        num += i
    }

    fmt.Println("num 最终和为:", num)

}

img

若想实现与whiledo ... while一样的效果,便去掉条件表达式,直接写个for { ....}或者for ; ; { ...}

package main

import (
    "fmt"
)

func main() {

    sum := 0
    for {
        sum++
        if sum > 30 {
            break
        }
    }

    fmt.Println("num 最终和为:", sum)

}

img

其实,在Go还提供了一个关键字range来遍历数组、切片、字符串、map以及后续的通道(channel)

package main

import (
    "fmt"
)

func main() {

    slice := []string{"秋码记录", "https://qiucode.cn", "仗剑行于江湖,执笔记江湖事!"}
    // 迭代每个元素,并显示值和地址
    for index, value := range slice {
        fmt.Printf("索引:%d  值是:%s\n", index, value)
    }

}

img