首页 > 后端开发 > Golang > 正文

go语言中if怎么用

青灯夜游
发布: 2023-01-30 18:49:12
原创
5262 人浏览过

在go语言中,关键字if用于测试某个条件(布尔型 或逻辑型)是否成立,如果该条件成立,则会执行if后由大括号“{}”括起来的代码块,否则就忽略该代码块继续执行后续的代码,语法“if condition {...}”。if语句用于选择单分支,如果存在第二个分支,而需要配合else关键字使用;如果存在更多分支,则还需要配合“else if”关键字使用。

go语言中if怎么用

本教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。

Go语言if else(分支结构)

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

if condition {
    // do something
}
登录后复制

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

if condition {
    // do something
} else {
    // do something
}
登录后复制

if else 语句是 if 语句的升级版,它不仅可以指定当表达式成立时要执行的代码,还可以指定当表达式不成立时要执行的代码

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

if condition1 {
    // do something
} else if condition2 {
    // do something else
}else {
    // catch-all or default
}
登录后复制

else if 关键字 用于在 if 语句条件不满足的情况下,继续执行 else if 里面的逻辑判断,如果满足条件则执行 else if 大括号里面的逻辑。

else if 语句只能写在 if 语句的大括号的后面,且 else if 语句可以写任意多个。

else if 分支的数量是没有限制的,但是为了代码的可读性,还是不要在 if 后面加入太多的 else if 结构,如果必须使用这种形式,则尽可能把先满足的条件放在前面。

关键字 if 和 else 之后的左大括号{必须和关键字在同一行,如果你使用了 else if 结构,则前段代码块的右大括号}必须和 else if 关键字在同一行,这两条规则都是被编译器强制规定的。

非法的 Go 代码:

if x{
}
else { // 无效的
}
登录后复制

要注意的是,在使用 gofmt 格式化代码之后,每个分支内的代码都会缩进 4 个或 8 个空格,或者是 1 个 tab,并且右大括号}与对应的 if 关键字垂直对齐。

在有些情况下,条件语句两侧的括号是可以被省略的,当条件比较复杂时,则可以使用括号让代码更易读,在使用 &&、|| 或 ! 时可以使用括号来提升某个表达式的运算优先级,并提高代码的可读性。

举例

通过下面的例子来了解 if 的写法:

var ten int = 11
if ten > 10 {
    fmt.Println(">10")
} else {
    fmt.Println("<=10")
}
登录后复制

代码输出如下:

>10
登录后复制

代码说明如下:

  • 第 1 行,声明整型变量并赋值 11。

  • 第 2 行,判断当 ten 的值大于 10 时执行第 3 行,否则执行第 4 行。

  • 第 3 和第 5 行,分别打印大于 10 和小于等于 10 时的输出。

特殊写法

if 还有一种特殊的写法,可以在 if 表达式之前添加一个执行语句,再根据变量值进行判断,代码如下:

if err := Connect(); err != nil {
    fmt.Println(err)
    return
}
登录后复制

Connect 是一个带有返回值的函数,err:=Connect() 是一个语句,执行 Connect 后,将错误保存到 err 变量中。

err != nil 才是 if 的判断表达式,当 err 不为空时,打印错误并返回。

这种写法可以将返回值与判断放在一行进行处理,而且返回值的作用范围被限制在 if、else 语句组合中。

提示

在编程中,变量的作用范围越小,所造成的问题可能性越小,每一个变量代表一个状态,有状态的地方,状态就会被修改,函数的局部变量只会影响一个函数的执行,但全局变量可能会影响所有代码的执行状态,因此限制变量的作用范围对代码的稳定性有很大的帮助。

【相关推荐:Go视频教程编程教学

以上是go语言中if怎么用的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板