其他分享
首页 > 其他分享> > go if语法

go if语法

作者:互联网

go if语句自身的特点

和 Go 函数一样,if 语句的分支代码块的左大括号与 if 关键字在同一行上,这也是 Go 代码风格的统一要求,gofmt 工具会帮助我们实现这一点; if 语句的布尔表达式整体不需要用括号包裹,一定程度上减少了开发人员敲击键盘的次数。而且,if 关键字后面的条件判断表达式的求值结果必须是布尔类型,即要么是 true,要么是 false  

操作符优先级

func main() {
    a, b := false,true
    if a && b != true {
        println("(a && b) != true")
        return
    }
    println("a && (b != true) == false")
}

//print: a && (b != true) == false

语句形式

单分支

    if t1 := true; t1 {
        fmt.Println("t1 is true")
    }

二分支、多分支

    var v2 int = 10
    if v2 > 10 {
        fmt.Println("v2>10!")
    } else if v2 > 5 {
        fmt.Println("10>=v2>5")
    } else {
        fmt.Println("v3<=5")
    }

if 自用变量

在 if 语句中声明自用变量是 Go 语言的一个惯用法,这种使用方式直观上可以让开发者有一种代码行数减少的感觉,提高可读性。

同时,由于这些变量是 if 语句自用变量,它的作用域仅限于 if 语句的各层隐式代码块中,if 语句外部无法访问和更改这些变量,这就让这些变量具有一定隔离性,这样你在阅读和理解 if 语句的代码时也可以更聚焦。  

快乐路径

Go 社区把这种 if 语句的使用方式称为 if 语句的“快乐路径(Happy Path)”原则,所谓“快乐路径”也就是成功逻辑的代码执行路径, 它的特点是这样的: 仅使用单分支控制结构; 当布尔表达式求值为 false 时,也就是出现错误时,在单分支中快速返回; 正常逻辑在代码布局上始终“靠左”,这样读者可以从上到下一眼看到该函数正常逻辑的全貌; 函数执行到最后一行代表一种成功状态。
    if v2 > 10 {
        fmt.Println("v2>10!")
        return
    }

    if v2 > 5 {
        fmt.Println("10>=v2>5")
        return
    }

 



标签:语句,10,fmt,语法,Println,v2,go,true
来源: https://www.cnblogs.com/wanghaokun/p/16607062.html