go语言for的三种形式

释放双眼,带上耳机,听听看~!

在Go中其他循环遍历的控制语句,唯有for。而for同样也是比较灵活的:

import "fmt"

func main() {
    i := 1
    for {
         i++
         if i>3{
             break
             }
             fmt.Printf(a)
    }
    fmt.Printf("OVER")
##2
package main
import "fmt"
func main() {
    // 最基本的一种,单一条件循环
    // 这个可以代替其他语言的while循环
    i := 1
    for i <= 3 {
        fmt.Println(i)
        i = i + 1
    }

    // 经典的循环条件初始化/条件判断/循环后条件变化
##3
package main
import "fmt"
func main() {
    // 最基本的一种,单一条件循环
    // 这个可以代替其他语言的while循环
    j:= 1
    for j := 7; j <= 9; j++ {
        fmt.Println(j)
    }

    // 无条件的for循环是死循环,除非你使用break跳出循环或者
    // 使用return从函数返回
    for {
        fmt.Println("loop")
        break
    }
}

循环控制语句可以控制循环体内语句的执行过程包含:

break语句:经常用于中断当前for循环或者跳出switch语句

continue语句:跳过当前循环的剩余语句,然后继续进行下一轮循环

goto语句:将控制转移到被标记的语句

egg:break

package main
import "fmt"
func main() {
LABEL1:
    for {
        for i := 0; i < 10; i++ {
            if i > 3 {
                break LABEL1
            }
        }
    }
    fmt.Printf("死循环结束了...../n")
}

egg:goto:

package main
import "fmt"
func main() {

    for {
        for i := 0; i < 10; i++ {
            if i > 3 {
                goto LABEL1
            }
        }
    }
LABEL1:
    fmt.Printf("死循环结束了...../n")
}package mainimport "fmt"func main() {    for i := 1; i < 10; i++ {        for {            goto LABEL1        }    }LABEL1:    fmt.Printf("死循环结束了...../n")}

egg:continue:

package main
import "fmt"
func main() {
LABEL1:
    for i := 0; i < 10; i++ {
        for {
            continue LABEL1  //内层的无限循环,通过外层的有限循环结束控制
        }
    }
    fmt.Printf("死循环结束了...../n")
}

**********************************

如过循环中条件语句永远不为 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++        }  }

【转自慕课】https://www.imooc.com

Go

Golang 中 Post &amp; Get 请求

2022-3-3 4:37:21

Go

Go语言之interface

2022-3-3 4:39:47

搜索