美文网首页
Go 语言 continue 语句

Go 语言 continue 语句

作者: 醉倾城1 | 来源:发表于2020-08-27 08:06 被阅读0次

    Go 语言的 continue 语句 有点像 break 语句。
    但是 continue 不是跳出循环,而是跳过当前循环执行下一次循环语句。

    for 循环中,执行 continue 语句会触发 for 增量语句的执行。
    在多重循环中,可以用标号 label 标出想 continue 的循环。

    语法

    continue 语法格式如下:

    continue;

    continue 语句流程图如下:

    image

    实例

    在变量 a 等于 15 的时候跳过本次循环执行下一次循环:

    package main
    
    import "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++;     
       }  
    }
    

    以上实例执行结果为:

    a 的值为 : 10
    a 的值为 : 11
    a 的值为 : 12
    a 的值为 : 13
    a 的值为 : 14
    a 的值为 : 16
    a 的值为 : 17
    a 的值为 : 18
    a 的值为 : 19

    以下实例有多重循环,演示了使用标记和不使用标记的区别:

    package main
    
    import "fmt"
    
    func main() {
    
        // 不使用标记
        fmt.Println("---- continue ---- ")
        for i := 1; i <= 3; i++ {
            fmt.Printf("i: %d\n", i)
                for i2 := 11; i2 <= 13; i2++ {
                    fmt.Printf("i2: %d\n", i2)
                    continue
                }
        }
    
        // 使用标记
        fmt.Println("---- continue label ----")
        re:
            for i := 1; i <= 3; i++ {
                fmt.Printf("i: %d\n", i)
                    for i2 := 11; i2 <= 13; i2++ {
                        fmt.Printf("i2: %d\n", i2)
                        continue re
                    }
            }
    }
    

    以上实例执行结果为:

    ---- continue ----
    i: 1
    i2: 11
    i2: 12
    i2: 13
    i: 2
    i2: 11
    i2: 12
    i2: 13
    i: 3
    i2: 11
    i2: 12
    i2: 13
    ---- continue label ----
    i: 1
    i2: 11
    i: 2
    i2: 11
    i: 3
    i2: 11

    相关文章

      网友评论

          本文标题:Go 语言 continue 语句

          本文链接:https://www.haomeiwen.com/subject/gqhxsktx.html