美文网首页go语言的那些事
go 语言-- 控制语句

go 语言-- 控制语句

作者: scannme | 来源:发表于2020-10-23 22:48 被阅读0次

    1 循环语句

    循环语句是一条表达式需要执行多次。Go 只有一种循环语句for循环, for循环语句不需要使用()

    for 初始化语句;条件语句;修饰语句 {}

    示列

    package main
    
    import "fmt"
    
    func main() {
        sum := 0
        
        for i := 0; i < 10; i ++ {
            sum += i
        }
        
        fmt.Println(sum)
    }
    
    

    go 语言没有while语言,使用下面for语句:

    func main() {
        sum := 1
        for sum < 1000 {
            sum += sum
        }
        fmt.Println(sum)
    }
    

    无限循环语句:

        for {
        }
    

    2 if-else 结构

    基本语法:

    if condition {
      //do something
    } else if condition2 {
      //do something
    } else {
      //do something
    }
    

    示列:

    package main
    import (
        "fmt"
        "math"
    )
    
    func pow(x, n, lim float64) float64 {
        if v := math.Pow(x, n); v < lim {
            return v
        } else {
            fmt.Printf("%g >= %g\n", v, lim)
        }
        // can't use v here, though
        return lim
    }
    
    func main() {
        fmt.Println(
            pow(3, 2, 10),
            pow(3, 3, 20),
        )
    }
    

    3. switch 结构

    语法结构:

    switch var {
      case val1:
          ....
      case val2:
          ....
      default:
          ...
    }
    

    go 语言的switch比C语言的更灵活,var可以是任何类型, val1和val2可以是同一类型的任何值。go语言的switch语句匹配到某个分支,执行完之后直接退出switch代码块,不需要执行break, 如果需要则可以使用关键字fallthrough

        switch i {
        case 0: //空分支,当i==0时执行
        case 1:
            f() //当i==0时不执行
    
        }
    
        //case 2
        switch i{
        case 0:fallthrough
        case 1:
            f() //当i==0时也会被调用
        }
    

    4 break和continue

    go语言和break和continue和C语言的作用基本一致。

    1、关键字break对应for循环是跳出当前循环,对应switch和select是跳出switch和selcet的代码块。
    2、关键字continue忽略剩余的循环体直接进入下一个循环

    相关文章

      网友评论

        本文标题:go 语言-- 控制语句

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