美文网首页
GO语言条件控制

GO语言条件控制

作者: 超级皮波9 | 来源:发表于2018-10-07 22:59 被阅读0次

    条件控制语句

    选择结构 if

    • 三种结构
    package main
    
    func main() {
        //第一种
        if 初始化表达式; 条件表达式 {
            语句1
        }
        //第二种格式
        if 初始化表达式; 条件表达式 {
            语句1
        }else{
            语句2
        }
        //第三种格式
        if 初始化表达式; 条件表达式 {
            语句1
        }else if 初始化表达式; 条件表达式 {
            语句2
        }else{
            语句3
        }
    }
    
    • 实例
    package main
    
    import "fmt"
    
    func main() {
        //判断是否成年
        if num := 5; num<18{
            fmt.Println("未成年")
        }
    }
    
    package main
    
    import "fmt"
    
    func main() {
        //判断是否成年
        if num := 20; num<18{
            fmt.Println("未成年")
        }else{
            fmt.Println("成年人")
        }
    }
    
    • 注意点
    1. 条件表达式返回的是布尔类型
    2. if 后面的大括号( {} )不能省略. 条件表达式的括号省略()
    3. 可以在条件表达式前面增加初始化表达式
    4. 每个条件表达式前面都可以添加初始化表达式(会采用就近原则取值)
    5. 如果初始化表达式定义在if里面 那么变量就只能在if结构里面使用,定义的变量后面的结构都可以使用
      [25]

    switch 语句

    • 格式
    package main
    
    func main() {
    
        // 第一种
        switch 值 {
        case 1:
            语句1
        case 2:
            语句2
        case 3:
            语句3
        default:
            语句4
        }
        //第二种
        switch 初始化表达式;值 {
        case 1:
            语句1
        case 2:
            语句2
        case 3:
            语句3
        default:
            语句4
        }
    }
    
    • 注意点
    1. GO语言中的switch 可以传入小数
    2. GO语言中的switch 可以添加初始化表达式
    3. GO语言中默认不用写break, 不会穿透,如果需要穿透,需要手动添加一个fallthrough
    4. Go语言中 default 可以不用写 也可以写到其他位置,系统都会最后执行
    5. GO语言中 case 后面可以直接定义变量,不用加大括号" {} "

    循环控制语句

    • GO语言中只有for 循环一种

    循环结构for

    package main
    
    func main() {
        
        for 初始化表达式;条件表达式;增量表达式  {
            循环语句
        }
        
    }
    
    • 最简单的死循环
    for { }
    
    • 实例
    package main
    
    import "fmt"
    
    func main() {
    
        for i:=0;i<10;i++{
            fmt.Println("我是go 语言的for")
        }
    
    }
    
    
    • 注意点
    1. 条件表达式只能返回布尔值
    2. 不能省略" {} "

    四大跳转

    break

    • GO语言中break 使用在 switch循环语句
      但是Go语言中switch中默认就不会穿透,所以break 也就可以不用写
    • 注意点
    1. GO语言中的break可以跳转到指定标签
    2. 标签只能定义在前面,并且跳转到标签之后循环不会被再次执行
    3. 标签循环之间不能再编写其他语句
    package main
    
    import "fmt"
    
    func main() {
    
      br:
        for i:=0;i<3;i++ {
            fmt.Println("break跳转")
    
            if i == 2 {
    
                break br
            }
        }// for end
    }  //main end
    

    continue

    • Go语言中continue 和C语言一样只能用于循环结构

    • Go语言中的continue 可以跳转到指定标签

    • 注意点

    1. 如果跳转的是单层循环,那么和不指定是一样的所以没有意义
    2. 如果跳转的多层循环,那么会结束当前内循环 跳转到下一次的外循环
    3. 跳转的标签 只能写在要跳转循环的前面
    4. 标签和要跳转的循环之间不能再有别的语句
    package main
    
    import "fmt"
    
    func main() {
    
    con:
        for i:=1;i<=5;i++{
            fmt.Println(i)
            for j:=1;j<=10;j++{
                if j%2 == 0{
                    continue con  // 只要j=2满足条件就会跳出
                }
                fmt.Println("*****",j)  // 所以j 永远等于1
            }
        }
    }  //main end
    

    相关文章

      网友评论

          本文标题:GO语言条件控制

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