• GoLang学习控制语句之if/else


    if语句

    if 是用于测试某个条件(布尔型或逻辑型)的语句,如果该条件成立,则会执行 if 后由大括号括起来的代码块,否则就忽略该代码块继续执行后续的代码。

    if condition {
        // do something    
    }
    

    if-else结构定义

    如果存在第二个分支,则可以在上面代码的基础上添加 else 关键字以及另一代码块,这个代码块中的代码只有在条件不满足时才会执行。if 和 else 后的两个代码块是相互独立的分支,只可能执行其中一个。

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

    多分支if-else结构定义

    如果存在第三个分支,则可以使用下面这种三个独立分支的形式:

    if condition1 {
        // do something    
    } else if condition2 {
        // do something else    
    }else {
        // catch-all or default
    }
    

    即使当代码块之间只有一条语句时,大括号也不可被省略(尽管有些人并不赞成,但这还是符合了软件工程原则的主流做法)。

    格式规则

    • Go语言中条件语句不需要圆括号。但是分支中必须有大括号。
    • Go语言条件语句中可以用:=初始化一个变量,不过需要记住,这个变量是局部变量,该变量的作用域仅在if范围之内。
    • Go语言里面对if/else格式对齐要求很严格,如果需要if/else组合,则需要在if语句结束的大括号后面就跟上else。
    • 关键字 if 和 else 之后的左大括号{必须和关键字在同一行,如果你使用了 else-if 结构,则前段代码块的右大括号}必须和 else-if 关键字在同一行。这两条规则都是被编译器强制规定的。

    代码示例

    package main
    import "fmt"
    
    func main() {
        // 基本的例子
        if 7%2 == 0 {
            fmt.Println("7 is even")
        } else {
            fmt.Println("7 is odd")
        }
    
        // 只有if条件的情况
        if 8%4 == 0 {
            fmt.Println("8 is divisible by 4")
        }
    
        // if条件可以包含一个初始化表达式,这个表达式中的变量
        // 是这个条件判断结构的局部变量
        if num := 9; num < 0 {
            fmt.Println(num, "is negative")
        } else if num < 10 {
            fmt.Println(num, "has 1 digit")
        } else {
            fmt.Println(num, "has multiple digits")
        }
    }
    
  • 相关阅读:
    ||和&&
    用jQuery编的一个分页小代码
    Intent携带额外的数据的方法
    Handler消息传递机制
    安卓中的消息提示
    使用AlertDialog创建对话框的大致步骤
    布局管理器
    Android中支持的常用距离单位
    开发自定义View
    Gridview中奇偶数行颜色设置
  • 原文地址:https://www.cnblogs.com/senlinyang/p/8869242.html
Copyright © 2020-2023  润新知