千家信息网

go语言中for的形式有哪些

发表于:2025-01-28 作者:千家信息网编辑
千家信息网最后更新 2025年01月28日,这篇文章主要介绍了go语言中for的形式有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在Go中其他循环遍历的控制语句,唯有for
千家信息网最后更新 2025年01月28日go语言中for的形式有哪些

这篇文章主要介绍了go语言中for的形式有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

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

import "fmt"func main() {    i := 1    for {         i++         if i>3{             break             }             fmt.Printf(a)    }    fmt.Printf("OVER")##2package mainimport "fmt"func main() {    // 最基本的一种,单一条件循环    // 这个可以代替其他语言的while循环    i := 1    for i <= 3 {        fmt.Println(i)        i = i + 1    }    // 经典的循环条件初始化/条件判断/循环后条件变化##3package mainimport "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++        }  }

感谢你能够认真阅读完这篇文章,希望小编分享的"go语言中for的形式有哪些"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

0